哈哈,楼主肯定是思路错了,使用了 TextureMappingEvent 事件,这个事件的 TextureMappingEventArgs 中不包含物件信息的。
其实应该订阅修改物件属性的事件,很简单,在你初始化插件的时候添加事件订阅:
- Rhino.RhinoDoc.ModifyObjectAttributes += RhinoDoc_ModifyObjectAttributes;
复制代码 RhinoDoc_ModifyObjectAttributes 方法里这样写就可以看到修改了哪个物件的 TextureMapping:
- private void RhinoDoc_ModifyObjectAttributes(object sender, Rhino.DocObjects.RhinoModifyObjectAttributesEventArgs e)
- {
- if (e.NewAttributes.HasMapping!=e.OldAttributes.HasMapping)
- {
- Rhino.RhinoApp.WriteLine("物件 {0} 的 TextureMapping 被修改。", e.RhinoObject.Id.ToString());
- }
-
- }
复制代码
|