public void AddGizmoLength(Gizmo gizmo) { if (!(gizmo is GizmoLength)) { return; } GizmoLength gizmoLength = (GizmoLength)gizmo; GameObject gizmoObject = new GameObject("length"); gizmoObject.transform.SetParent(gizmoWrapper.transform); LengthBehaviour lengthBehaviour = gizmoObject.AddComponent <LengthBehaviour>(); lengthBehaviour.Init(geoCamera); EdgeRefer edge = gizmoLength.edge; Vector3 center = geometry.Center(); Vector3 vertex1 = geometry.UnitVector(edge.id1); Vector3 vertex2 = geometry.UnitVector(edge.id2); float length = geometry.EdgeLength(edge.id1, edge.id2); lengthBehaviour.SetData(center, vertex1, vertex2, length); gizmoMap.Add(gizmoLength, lengthBehaviour); }
public CuboidLengthCondition(float length) { this.length = length; GizmoLength gizmoLength = new GizmoLength(Cuboid.PNP_A, Cuboid.PNN_D); gizmos = new Gizmo[] { gizmoLength }; }
public CuboidWidthCondition(float width) { this.width = width; GizmoLength gizmoLength = new GizmoLength(Cuboid.PNP_A, Cuboid.NNP_B); gizmos = new Gizmo[] { gizmoLength }; }
public CuboidHeightCondition(float height) { this.height = height; GizmoLength gizmoLength = new GizmoLength(Cuboid.PNP_A, Cuboid.PPP_E); gizmos = new Gizmo[] { gizmoLength }; }
public BottomLengthCondition(int id1, int id2, float length) : base(1) { this.edge = new EdgeRefer(id1, id2); this.length = length; GizmoLength gizmoLength = new GizmoLength(edge); gizmos = new Gizmo[] { gizmoLength }; }
public override void InitWithGeometry(Geometry geometry) { VertexUnit v1 = geometry.VertexUnit(edge.id1); VertexUnit v2 = geometry.VertexUnit(edge.id2); dependencies = new List <VertexUnit>(); dependencies.Add(v1); dependencies.Add(v2); GizmoLength gizmoLength = new GizmoLength(edge); gizmos = new Gizmo[] { gizmoLength }; }
public void RemoveGizmoLength(Gizmo gizmo) { if (!(gizmo is GizmoLength)) { return; } GizmoLength gizmoLength = (GizmoLength)gizmo; LengthBehaviour lengthBehaviour = (LengthBehaviour)gizmoMap[gizmoLength]; Destroy(lengthBehaviour.gameObject); gizmoMap.Remove(gizmoLength); }
public void UpdateGizmoLength(Gizmo gizmo) { if (!(gizmo is GizmoLength)) { return; } GizmoLength gizmoLength = (GizmoLength)gizmo; LengthBehaviour lengthBehaviour = (LengthBehaviour)gizmoMap[gizmoLength]; EdgeRefer edge = gizmoLength.edge; Vector3 center = geometry.Center(); Vector3 vertex1 = geometry.UnitVector(edge.id1); Vector3 vertex2 = geometry.UnitVector(edge.id2); float length = geometry.EdgeLength(edge.id1, edge.id2); lengthBehaviour.SetData(center, vertex1, vertex2, length); }