Show / Hide Table of Contents

Class RuledSurface

Surface definition of a surface defined by two curves. Both curves use the standard parameter interval from 0.0 to 1.0 The u-direction is provided by a combination of the two curves. The v parameter is defined by a line starting on the first curve and ending on the second curve. It is the surface described by a wire or rubber band synchronously moving along the two curves. the default parameter space is 0.0 to 1.0 on u and v.

Inheritance
System.Object
ISurfaceImpl
RuledSurface
Implements
ISurface
IOctTreeInsertable
System.Runtime.Serialization.ISerializable
IExportStep
Inherited Members
ISurfaceImpl.extrema
ISurfaceImpl.InvalidateSecondaryData()
ISurfaceImpl.GetNormal(GeoPoint2D)
ISurfaceImpl.PositionOf(GeoPoint)
ISurfaceImpl.GetTangentCurves(GeoVector, Double, Double, Double, Double)
ISurfaceImpl.IsVanishingProjection(Projection, Double, Double, Double, Double)
ISurfaceImpl.IsUClosed
ISurfaceImpl.IsVClosed
ISurfaceImpl.GetUSingularities()
ISurfaceImpl.GetVSingularities()
ISurfaceImpl.MakeFace(SimpleShape)
ISurfaceImpl.GetZMinMax(Projection, Double, Double, Double, Double, Double, Double)
ISurfaceImpl.MakeCanonicalForm()
ISurfaceImpl.Approximate(Double, Double, Double, Double, Double)
ISurfaceImpl.GetProjectedCurve(ICurve, Double)
ISurfaceImpl.Intersect(BoundingRect, ISurface, BoundingRect)
ISurfaceImpl.Intersect(BoundingRect, ISurface, BoundingRect, GeoPoint)
ISurfaceImpl.GetOffsetSurface(Double)
ISurfaceImpl.GetOffsetSurface(Double, ModOp2D)
ISurfaceImpl.HitTest(BoundingCube, Double, Double, Double, Double)
ISurfaceImpl.HitTest(BoundingCube, GeoPoint2D)
ISurfaceImpl.Oriented
ISurfaceImpl.IsRuled
ISurfaceImpl.Orientation(GeoPoint)
ISurfaceImpl.GetSaveUSteps()
ISurfaceImpl.GetSaveVSteps()
ISurfaceImpl.GetPatchExtent(BoundingRect, Boolean)
ISurfaceImpl.GetPolynomialParameters()
ISurfaceImpl.GetImplicitPolynomial()
ISurfaceImpl.SetBounds(BoundingRect)
ISurfaceImpl.PerpendicularFoot(GeoPoint)
ISurfaceImpl.HasDiscontinuousDerivative(ICurve2D[])
ISurfaceImpl.GetNonPeriodicSurface(ICurve[])
ISurfaceImpl.GetPatchHull(BoundingRect, GeoPoint, GeoVector, GeoVector, GeoVector)
ISurfaceImpl.GetTouchingPoints(BoundingRect, ISurface, BoundingRect)
ISurfaceImpl.GetCanonicalForm(Double, Nullable<BoundingRect>)
ISurfaceImpl.PositionOf(GeoPoint, BoundingRect)
ISurfaceImpl.GetExtremePositions(BoundingRect, ISurface, BoundingRect, List<Tuple<Double, Double, Double, Double>>)
ISurfaceImpl.GetExtremePositions(BoundingRect, ICurve, List<Tuple<Double, Double, Double>>)
ISurfaceImpl.GetDistance(GeoPoint)
ISurfaceImpl.IsExtruded(GeoVector)
ISurfaceImpl.GetContextMenuForParametrics(IFrame, Face)
ISurfaceImpl.UvChangesWithModification
ISurfaceImpl.sqr(Double)
ISurfaceImpl.cube(Double)
ISurfaceImpl.quad(Double)
ISurfaceImpl.exp32(Double)
ISurfaceImpl.exp52(Double)
ISurfaceImpl.MaxDist(GeoPoint2D, GeoPoint2D, GeoPoint2D)
ISurfaceImpl.Refine(GeoPoint[], Int32, Boolean, PlaneSurface, Double)
ISurfaceImpl.IOctTreeInsertable.GetExtent(Double)
ISurfaceImpl.IOctTreeInsertable.HitTest(BoundingCube, Double)
ISurfaceImpl.IOctTreeInsertable.HitTest(Projection, BoundingRect, Boolean)
ISurfaceImpl.IOctTreeInsertable.HitTest(Projection.PickArea, Boolean)
ISurfaceImpl.IOctTreeInsertable.Position(GeoPoint, GeoVector, Double)
ISurfaceImpl.GetDualSurfaceCurves(BoundingRect, ISurface, BoundingRect, List<GeoPoint>, List<Tuple<Double, Double, Double, Double>>)
ISurfaceImpl.GetSelfIntersections(BoundingRect)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: CADability
Assembly: CADability.dll
Syntax
[Serializable]
public class RuledSurface : ISurfaceImpl, ISurface, IOctTreeInsertable, ISerializable, IExportStep

Constructors

| Improve this Doc View Source

RuledSurface(ICurve, ICurve)

Declaration
public RuledSurface(ICurve firstCurve, ICurve secondCurve)
Parameters
Type Name Description
ICurve firstCurve
ICurve secondCurve
| Improve this Doc View Source

RuledSurface(SerializationInfo, StreamingContext)

Declaration
protected RuledSurface(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info
System.Runtime.Serialization.StreamingContext context

Properties

| Improve this Doc View Source

FirstCurve

Declaration
public ICurve FirstCurve { get; }
Property Value
Type Description
ICurve
| Improve this Doc View Source

IsUPeriodic

Declaration
public override bool IsUPeriodic { get; }
Property Value
Type Description
System.Boolean
Overrides
ISurfaceImpl.IsUPeriodic
| Improve this Doc View Source

IsVPeriodic

Declaration
public override bool IsVPeriodic { get; }
Property Value
Type Description
System.Boolean
Overrides
ISurfaceImpl.IsVPeriodic
| Improve this Doc View Source

SecondCurve

Declaration
public ICurve SecondCurve { get; }
Property Value
Type Description
ICurve
| Improve this Doc View Source

UPeriod

Declaration
public override double UPeriod { get; }
Property Value
Type Description
System.Double
Overrides
ISurfaceImpl.UPeriod
| Improve this Doc View Source

VPeriod

Declaration
public override double VPeriod { get; }
Property Value
Type Description
System.Double
Overrides
ISurfaceImpl.VPeriod

Methods

| Improve this Doc View Source

Clone()

Overrides Clone()

Declaration
public override ISurface Clone()
Returns
Type Description
ISurface
Overrides
ISurfaceImpl.Clone()
| Improve this Doc View Source

CopyData(ISurface)

Overrides CopyData(ISurface)

Declaration
public override void CopyData(ISurface CopyFrom)
Parameters
Type Name Description
ISurface CopyFrom
Overrides
ISurfaceImpl.CopyData(ISurface)
| Improve this Doc View Source

Derivation2At(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector, out GeoVector, out GeoVector, out GeoVector)

Overrides Derivation2At(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector, out GeoVector, out GeoVector, out GeoVector)

Declaration
public override void Derivation2At(GeoPoint2D uv, out GeoPoint location, out GeoVector du, out GeoVector dv, out GeoVector duu, out GeoVector dvv, out GeoVector duv)
Parameters
Type Name Description
GeoPoint2D uv
GeoPoint location
GeoVector du
GeoVector dv
GeoVector duu
GeoVector dvv
GeoVector duv
Overrides
ISurfaceImpl.Derivation2At(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector, out GeoVector, out GeoVector, out GeoVector)
| Improve this Doc View Source

DerivationAt(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector)

Overrides DerivationAt(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector)

Declaration
public override void DerivationAt(GeoPoint2D uv, out GeoPoint location, out GeoVector du, out GeoVector dv)
Parameters
Type Name Description
GeoPoint2D uv
GeoPoint location
GeoVector du
GeoVector dv
Overrides
ISurfaceImpl.DerivationAt(GeoPoint2D, out GeoPoint, out GeoVector, out GeoVector)
| Improve this Doc View Source

FixedU(Double, Double, Double)

Overrides FixedU(Double, Double, Double)

Declaration
public override ICurve FixedU(double u, double vmin, double vmax)
Parameters
Type Name Description
System.Double u
System.Double vmin
System.Double vmax
Returns
Type Description
ICurve
Overrides
ISurfaceImpl.FixedU(Double, Double, Double)
| Improve this Doc View Source

FixedV(Double, Double, Double)

Overrides FixedV(Double, Double, Double)

Declaration
public override ICurve FixedV(double v, double umin, double umax)
Parameters
Type Name Description
System.Double v
System.Double umin
System.Double umax
Returns
Type Description
ICurve
Overrides
ISurfaceImpl.FixedV(Double, Double, Double)
| Improve this Doc View Source

GetExtrema()

Overrides GetExtrema()

Declaration
public override GeoPoint2D[] GetExtrema()
Returns
Type Description
GeoPoint2D[]
Overrides
ISurfaceImpl.GetExtrema()
| Improve this Doc View Source

GetLineIntersection(GeoPoint, GeoVector)

Declaration
public override GeoPoint2D[] GetLineIntersection(GeoPoint startPoint, GeoVector direction)
Parameters
Type Name Description
GeoPoint startPoint
GeoVector direction
Returns
Type Description
GeoPoint2D[]
Overrides
ISurfaceImpl.GetLineIntersection(GeoPoint, GeoVector)
| Improve this Doc View Source

GetModified(ModOp)

Overrides GetModified(ModOp)

Declaration
public override ISurface GetModified(ModOp m)
Parameters
Type Name Description
ModOp m
Returns
Type Description
ISurface
Overrides
ISurfaceImpl.GetModified(ModOp)
| Improve this Doc View Source

GetNaturalBounds(out Double, out Double, out Double, out Double)

Overrides GetNaturalBounds(out Double, out Double, out Double, out Double)

Declaration
public override void GetNaturalBounds(out double umin, out double umax, out double vmin, out double vmax)
Parameters
Type Name Description
System.Double umin
System.Double umax
System.Double vmin
System.Double vmax
Overrides
ISurfaceImpl.GetNaturalBounds(out Double, out Double, out Double, out Double)
| Improve this Doc View Source

GetPlaneIntersection(PlaneSurface, Double, Double, Double, Double, Double)

Overrides GetPlaneIntersection(PlaneSurface, Double, Double, Double, Double, Double)

Declaration
public override IDualSurfaceCurve[] GetPlaneIntersection(PlaneSurface pl, double umin, double umax, double vmin, double vmax, double precision)
Parameters
Type Name Description
PlaneSurface pl
System.Double umin
System.Double umax
System.Double vmin
System.Double vmax
System.Double precision
Returns
Type Description
IDualSurfaceCurve[]
Overrides
ISurfaceImpl.GetPlaneIntersection(PlaneSurface, Double, Double, Double, Double, Double)
| Improve this Doc View Source

GetPropertyEntry(IFrame)

Declaration
public override IPropertyEntry GetPropertyEntry(IFrame frame)
Parameters
Type Name Description
IFrame frame
Returns
Type Description
IPropertyEntry
Overrides
ISurfaceImpl.GetPropertyEntry(IFrame)
| Improve this Doc View Source

GetSafeParameterSteps(Double, Double, Double, Double, out Double[], out Double[])

Declaration
public override void GetSafeParameterSteps(double umin, double umax, double vmin, double vmax, out double[] intu, out double[] intv)
Parameters
Type Name Description
System.Double umin
System.Double umax
System.Double vmin
System.Double vmax
System.Double[] intu
System.Double[] intv
Overrides
ISurfaceImpl.GetSafeParameterSteps(Double, Double, Double, Double, out Double[], out Double[])
| Improve this Doc View Source

Intersect(ICurve, BoundingRect, out GeoPoint[], out GeoPoint2D[], out Double[])

Declaration
public override void Intersect(ICurve curve, BoundingRect uvExtent, out GeoPoint[] ips, out GeoPoint2D[] uvOnFaces, out double[] uOnCurve3Ds)
Parameters
Type Name Description
ICurve curve
BoundingRect uvExtent
GeoPoint[] ips
GeoPoint2D[] uvOnFaces
System.Double[] uOnCurve3Ds
Overrides
ISurfaceImpl.Intersect(ICurve, BoundingRect, out GeoPoint[], out GeoPoint2D[], out Double[])
| Improve this Doc View Source

Make3dCurve(ICurve2D)

Overrides Make3dCurve(ICurve2D)

Declaration
public override ICurve Make3dCurve(ICurve2D curve2d)
Parameters
Type Name Description
ICurve2D curve2d
Returns
Type Description
ICurve
Overrides
ISurfaceImpl.Make3dCurve(ICurve2D)
| Improve this Doc View Source

Modify(ModOp)

Overrides Modify(ModOp)

Declaration
public override void Modify(ModOp m)
Parameters
Type Name Description
ModOp m
Overrides
ISurfaceImpl.Modify(ModOp)
| Improve this Doc View Source

PointAt(GeoPoint2D)

Implements PointAt(GeoPoint2D).

Declaration
public override GeoPoint PointAt(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoPoint
Overrides
ISurfaceImpl.PointAt(GeoPoint2D)
| Improve this Doc View Source

ReverseOrientation()

Declaration
public override ModOp2D ReverseOrientation()
Returns
Type Description
ModOp2D
Overrides
ISurfaceImpl.ReverseOrientation()
| Improve this Doc View Source

SameGeometry(BoundingRect, ISurface, BoundingRect, Double, out ModOp2D)

Declaration
public override bool SameGeometry(BoundingRect thisBounds, ISurface other, BoundingRect otherBounds, double precision, out ModOp2D firstToSecond)
Parameters
Type Name Description
BoundingRect thisBounds
ISurface other
BoundingRect otherBounds
System.Double precision
ModOp2D firstToSecond
Returns
Type Description
System.Boolean
Overrides
ISurfaceImpl.SameGeometry(BoundingRect, ISurface, BoundingRect, Double, out ModOp2D)
| Improve this Doc View Source

UDirection(GeoPoint2D)

Overrides UDirection(GeoPoint2D)

Declaration
public override GeoVector UDirection(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoVector
Overrides
ISurfaceImpl.UDirection(GeoPoint2D)
| Improve this Doc View Source

VDirection(GeoPoint2D)

Overrides VDirection(GeoPoint2D)

Declaration
public override GeoVector VDirection(GeoPoint2D uv)
Parameters
Type Name Description
GeoPoint2D uv
Returns
Type Description
GeoVector
Overrides
ISurfaceImpl.VDirection(GeoPoint2D)

Explicit Interface Implementations

| Improve this Doc View Source

IExportStep.Export(ExportStep, Boolean)

Declaration
int IExportStep.Export(ExportStep export, bool topLevel)
Parameters
Type Name Description
ExportStep export
System.Boolean topLevel
Returns
Type Description
System.Int32
| Improve this Doc View Source

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Declaration
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info
System.Runtime.Serialization.StreamingContext context

Implements

ISurface
IOctTreeInsertable
System.Runtime.Serialization.ISerializable
IExportStep
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX