override protected void OnBeginCapture(Ray3f worldRay, Standard3DWidget w) { foreach (var v in Widgets) { if (v.Value is PositionConstrainedPointWidget) { PositionConstrainedPointWidget widget = v.Value as PositionConstrainedPointWidget; widget.SourceSO = Targets[0]; widget.ScenePositionF = this.ScenePositionF; } } }
override protected void BuildGizmo() { gizmo.SetName("PositionConstrainedGizmo"); make_materials(); centerGO = AppendMeshGO("object_origin", UnityUtil.GetPrimitiveMesh(PrimitiveType.Sphere), srcMaterial, gizmo); centerGO.SetLocalScale(WidgetScale); Widgets[centerGO] = new PositionConstrainedPointWidget(this, this.parentScene) { RootGameObject = centerGO, StandardMaterial = srcMaterial, HoverMaterial = srcHoverMaterial }; gizmo.Hide(); }