public IArcEntity ArcByCenterPointRadiusAngle(IPointEntity center, double radius, double startAngle, double endAngle, IVectorEntity normal) { DSGeometryApplication.Check(); double sweepAngle = endAngle - startAngle; return(new ArcEntity(center, normal, radius, startAngle, sweepAngle)); }
public IPlaneEntity PlaneByOriginNormal(IPointEntity origin, IVectorEntity normal) { DSGeometryApplication.Check(); IPlaneEntity plane = new PlaneEntity(origin, normal); return(plane); }
public INurbsSurfaceEntity NurbsSurfaceByControlVertices(IPointEntity[][] controlVertices, int uDegree, int vDegree) { DSGeometryApplication.Check(); INurbsSurfaceEntity surface = new NurbsSurfaceEntity(controlVertices, uDegree, vDegree, 1); return(surface); }
public ISphereEntity SphereByCenterPointRadius(IPointEntity centerPoint, double radius) { DSGeometryApplication.Check(); ISphereEntity sph = new SphereEntity(centerPoint, radius); return(sph); }
public ICuboidEntity CuboidByLengths(ICoordinateSystemEntity cs, double length, double width, double height) { DSGeometryApplication.Check(); ICuboidEntity cub = new CuboidEntity(new double[] { cs.Origin.X, cs.Origin.Y, cs.Origin.Z }, length, width, height); return(cub); }
public INurbsSurfaceEntity NurbsSurfaceByPoints(IPointEntity[][] points, int uDegree, int vDegree) { DSGeometryApplication.Check(); INurbsSurfaceEntity surface = new NurbsSurfaceEntity(points, uDegree, vDegree, 0); return(surface); }
public IBSplineSurfaceEntity BSplineSurfaceByPoints(IPointEntity[][] points, int uDegree, int vDegree) { DSGeometryApplication.Check(); IBSplineSurfaceEntity surface = new BSplineSurfaceEntity(); surface.UpdateByPoints(points, uDegree, vDegree); return(surface); }
public IBSplineSurfaceEntity BSplineSurfaceByControlVertices(IPointEntity[][] controlVertices, int uDegree, int vDegree) { DSGeometryApplication.Check(); IBSplineSurfaceEntity surface = new BSplineSurfaceEntity(); surface.UpdateByPoles(controlVertices, uDegree, vDegree); return(surface); }
public IConeEntity ConeByPointsRadii(IPointEntity startPoint, IPointEntity endPoint, double startRadius, double endRadius) { DSGeometryApplication.Check(); ConeEntity cone = new ConeEntity(); cone.UpdateCone(startPoint, endPoint, startRadius, endRadius); return(cone); }
public IArcEntity ArcByCenterPointStartPointSweepAngle(IPointEntity centerPoint, IPointEntity startPoint, double sweepAngle, IVectorEntity normal) { DSGeometryApplication.Check(); double radius = startPoint.DistanceTo(centerPoint); double startAngle = 30; return(new ArcEntity(centerPoint, normal, radius, startAngle, sweepAngle)); }
public ILineEntity LineByStartPointEndPoint(IPointEntity startPoint, IPointEntity endPoint) { DSGeometryApplication.Check(); LineEntity lnhost = new LineEntity(); lnhost.UpdateEndPoints(startPoint, endPoint); return(lnhost); }
public IConeEntity ConeByRadiusLength(ICoordinateSystemEntity cs, double startRadius, double endRadius, double height) { DSGeometryApplication.Check(); ConeEntity cone = new ConeEntity(); IPointEntity startPoint = cs.Origin; IPointEntity endPoint = new PointEntity(cs.Origin.X, cs.Origin.Y, cs.Origin.Z + height); cone.UpdateCone(startPoint, endPoint, startRadius, endRadius); return(cone); }
public ICoordinateSystemEntity CoordinateSystemBySphericalCoordinates(ICoordinateSystemEntity contextCS, double radius, double theta, double phi) { DSGeometryApplication.Check(); CoordinateEntity cs = new CoordinateEntity(); cs.Set(new PointEntity() { X = radius * Math.Sin(DegreeToRadian(theta)) * Math.Cos(DegreeToRadian(phi)), Y = radius * Math.Sin(DegreeToRadian(theta)) * Math.Sin(DegreeToRadian(phi)), Z = radius * Math.Cos(DegreeToRadian(theta)) }, contextCS.XAxis, contextCS.YAxis, contextCS.ZAxis); return(cs); }
public IArcEntity ArcByCenterPointStartPointSweepPoint(IPointEntity centerPoint, IPointEntity startPoint, IPointEntity sweepPoint) { DSGeometryApplication.Check(); Vector start_center = Vector.ByCoordinates(startPoint.X - centerPoint.X, startPoint.Y - centerPoint.Y, startPoint.Z - centerPoint.Z); Vector sweep_center = Vector.ByCoordinates(sweepPoint.X - centerPoint.X, sweepPoint.Y - centerPoint.Y, sweepPoint.Z - centerPoint.Z); Vector normal = start_center.Cross(sweep_center); double radius = start_center.GetLength(); Vector Axis = Vector.ByCoordinates(1, 0, 0); double startAngle = Math.Acos(start_center.Dot(Axis) / (start_center.GetLength() * Axis.GetLength())); double sweepAngle = Math.Acos(start_center.Dot(sweep_center) / (start_center.GetLength() * sweep_center.GetLength())); return(new ArcEntity(centerPoint, normal.ToIVector(), radius, startAngle, sweepAngle)); }
public ICoordinateSystemEntity CoordinateSystemByCylindricalCoordinates(ICoordinateSystemEntity contextCS, double radius, double theta, double height) { DSGeometryApplication.Check(); CoordinateEntity cs = new CoordinateEntity(); cs.Set(new PointEntity() { X = radius * Math.Cos(DegreeToRadian(theta)), Y = radius * Math.Sin(DegreeToRadian(theta)), Z = height }, contextCS.XAxis, contextCS.YAxis, contextCS.ZAxis); return(cs); // return new CoordinateEntity() { Origin = new PointEntity() { X = radius*Math.Sin(theta), Y = radius*Math.Cos(theta), Z = height } }; // return new CoordinateEntity(); }
public ICircleEntity CircleByCenterPointRadiusNormal(IPointEntity center, double radius, IVectorEntity normal) { DSGeometryApplication.Check(); return(new CircleEntity(center, radius, normal)); }
public ICircleEntity CircleByPointsOnCurve(IPointEntity firstPoint, IPointEntity secondPoint, IPointEntity thirdPoint) { DSGeometryApplication.Check(); return(new CircleEntity()); }
public ISolidEntity SolidByRevolve(ICurveEntity profile, IPointEntity axisOrigin, IVectorEntity axisDirection, double startAngle, double sweepAngle) { DSGeometryApplication.Check(); return(new SolidEntity()); }
public ISolidEntity SolidBySweep(ICurveEntity profile, ICurveEntity path) { DSGeometryApplication.Check(); return(new SolidEntity()); }
public ISolidEntity SolidByLoftGuides(ICurveEntity[] crossSections, ICurveEntity[] guides) { DSGeometryApplication.Check(); return(new SolidEntity()); }
public ISurfaceEntity SurfaceByLoft(ICurveEntity[] crossSections, ICurveEntity guides) { DSGeometryApplication.Check(); return(new SurfaceEntity()); }
public INurbsCurveEntity NurbsCurveByPointsTangents(IPointEntity[] pts, IVectorEntity startTangent, IVectorEntity endTangent) { DSGeometryApplication.Check(); return(new NurbsCurveEntity()); }
public IPointEntity PointByCartesianCoordinates(ICoordinateSystemEntity cs, double x, double y, double z) { DSGeometryApplication.Check(); return(new PointEntity(cs.Origin.X + x, cs.Origin.Y + y, cs.Origin.Z + z)); }
public INurbsCurveEntity NurbsCurveByControlVertices(IPointEntity[] points, int degree, bool close_curve) { DSGeometryApplication.Check(); return(new NurbsCurveEntity(points, degree, close_curve)); }
public IArcEntity ArcByThreePoints(IPointEntity firstPoint, IPointEntity secondPoint, IPointEntity thirdPoint) { DSGeometryApplication.Check(); return(new ArcEntity()); }
public IBSplineCurveEntity BSplineByPoints(IPointEntity[] pts, bool makePeriodic) { DSGeometryApplication.Check(); return(new BSplineCurveEntity()); }
public ICircleEntity CircleByThreePoints(IPointEntity p1, IPointEntity p2, IPointEntity p3) { DSGeometryApplication.Check(); return(new CircleEntity()); }
public IPolygonEntity PolygonByPoints(IPointEntity[] points) { DSGeometryApplication.Check(); return(new PolygonEntity()); }
public IPointEntity PointByCoordinates(double x, double y, double z) { DSGeometryApplication.Check(); return(new PointEntity(x, y, z)); }
public INurbsCurveEntity NurbsCurveByPoints(IPointEntity[] hosts, bool makePeriodic) { DSGeometryApplication.Check(); return(new NurbsCurveEntity()); }