public override void SetExtents() { Extents.MinX = DiameterP2.X - DiameterP1; Extents.MaxX = DiameterP2.X + DiameterP1; Extents.MinY = DiameterP2.Y - DiameterP1; Extents.MaxY = DiameterP2.Y + DiameterP1; Extents.MinZ = DiameterP2.Z - DiameterP1; Extents.MaxZ = DiameterP2.Z + DiameterP1; // determine start and end points StartPoint = GeometricArithmeticModule.GetPointAtAngle(DiameterP2, DiameterP1, 0); EndPoint = GeometricArithmeticModule.GetPointAtAngle(DiameterP2, DiameterP1, 2 * Math.PI); }
public override void SetExtents() { Extents.MinX = CentrePoint.X - Radius; Extents.MaxX = CentrePoint.X + Radius; Extents.MinY = CentrePoint.Y - Radius; Extents.MaxY = CentrePoint.Y + Radius; Extents.MinZ = CentrePoint.Z - Radius; Extents.MaxZ = CentrePoint.Z + Radius; // determine start and end points StartPoint = GeometricArithmeticModule.GetPointAtAngle(CentrePoint, Radius, 0); EndPoint = GeometricArithmeticModule.GetPointAtAngle(CentrePoint, Radius, 2 * Math.PI); }
public void GenerateView() { for (int i = 0; i < VertexCount; i++) { Points.Add( GeometricArithmeticModule.GetPointAtAngle( CentrePoint, MajorAxis, MinorAxis, GeometricArithmeticModule.Map(i, 0, VertexCount - 1, StartAngle, EndAngle) ) ); } //StartPoint = GeometricArithmeticModule.GetPointAtAngle(CentrePoint, MajorAxis, MinorAxis, StartAngle); //EndPoint = GeometricArithmeticModule.GetPointAtAngle(CentrePoint, MajorAxis, MinorAxis, EndAngle); IsClosed = Math.Abs(StartAngle - EndAngle) >= (2.0 * Math.PI) || (StartPoint == EndPoint); Update(); }