假设我绘制一个曲面,并在运行时使用鼠标旋转曲面。一旦实现了曲面的正确旋转,我如何获得它的状态?
发布于 2013-08-13 02:21:55
每个驱动程序都会创建全局场景的克隆,该克隆会随着其源中的更改而不断同步和更新。旋转是在克隆上完成的。我还没有测试过它,但我认为你可以通过以下方式查询克隆中的对象(例如plot cube
panel.GetCurrentScene().First<ILPlotCube>(/*your filter if needed*/) 此实例将反映用户所做的所有更改。
发布于 2013-08-14 18:32:39
user492238s answer中指出的方法确实有效。但是,GetCurrentScene()将新场景组合为全局场景和局部场景(到当前驱动程序)的组合。如果频繁调用,这样做的代价可能会很高。如果只需要单个对象/属性,则可以使用panel.SceneSyncRoot。
此外,打印立方体的旋转由plotcube.Rotation特性显示。因此,为了获得绘图立方体的当前旋转(包括由于用户输入而产生的旋转):
panel.SceneSyncRoot.First<ILPlotCube>().Rotation https://stackoverflow.com/questions/18190469
复制相似问题