public void UpdateSurfacePoint(SORayHit hitPoint) { Frame3f hitFrameW = new Frame3f(hitPoint.hitPos, hitPoint.hitNormal); Frame3f hitFrameS = Scene.ToSceneFrame(hitFrameW); SetPointPosition(surface_point, hitFrameS, CoordSpace.SceneCoords); }
public void UpdateCurve(Ray3f ray, SORayHit rayHit) { if (rayHit.hitSO != null && rayHit.hitSO is PolyCurveSO && rayHit.hitSO != curveSO) { set_curve(rayHit.hitSO as PolyCurveSO, (axisCurveSO != null)); } }
public void InitializeSurfacePoint(SORayHit hitPoint) { surface_point = AppendSurfacePoint(SurfacePointName, PointColor, PointSceneRadius); Frame3f hitFrameW = new Frame3f(hitPoint.hitPos, hitPoint.hitNormal); Frame3f hitFrameS = Scene.ToSceneFrame(hitFrameW); SetPointPosition(surface_point, hitFrameS, CoordSpace.SceneCoords); }
public void UpdateAxis(Ray3f ray, SORayHit rayHit) { // [todo: snaps] // [todo: cycle axes] if (rayHit.hitSO != null && rayHit.hitSO is SceneObject) { set_axis(rayHit.hitSO, rayHit.hitSO is PolyCurveSO); } }
override public bool FindRayIntersection(Ray3f ray, out SORayHit hit) { if (EnableRayIntersection == false) { hit = null; return(false); } else { return(base.FindRayIntersection(ray, out hit)); } }
override public bool FindRayIntersection(Ray3f ray, out SORayHit hit) { hit = null; return(false); }