Header menu logo Rhino.Scripting.Fsharp

AutoOpenCurve Module

This module provides functions to create or manipulate Rhino Curves This module is automatically opened when Rhino.Scripting.FSharp namespace is opened. These type extensions are only visible in F#.

Type extensions

Type extension Description

RhinoScriptSyntax.FilletArc(prevPt, midPt, nextPt, radius)

Full Usage: RhinoScriptSyntax.FilletArc(prevPt, midPt, nextPt, radius)

Parameters:
    prevPt : Point3d - (Point3d) The first point of polyline
    midPt : Point3d - (Point3d) The middle point of polyline, that will get the fillet
    nextPt : Point3d - (Point3d) The last (or third) point of polyline
    radius : float - (float) The radius of the fillet to attempt to create

Returns: Arc (Arc) An Arc geometry.

Returns the fillet arc if it fits within three points describing two connected lines (= a polyline). Fails otherwise.

Extended Type: RhinoScriptSyntax

prevPt : Point3d

(Point3d) The first point of polyline

midPt : Point3d

(Point3d) The middle point of polyline, that will get the fillet

nextPt : Point3d

(Point3d) The last (or third) point of polyline

radius : float

(float) The radius of the fillet to attempt to create

Returns: Arc

(Arc) An Arc geometry.

RhinoScriptSyntax.FilletPolyline(fillets, polyline)

Full Usage: RhinoScriptSyntax.FilletPolyline(fillets, polyline)

Parameters:
    fillets : IDictionary<int, float> - (IDictionary) The index of the corners to fillet and the fillet radius
    polyline : IList<Point3d> - (IList) The Polyline as point-list

Returns: PolyCurve (PolyCurve) A PolyCurve object.

Fillet some corners of a polyline.

Extended Type: RhinoScriptSyntax

fillets : IDictionary<int, float>

(IDictionary) The index of the corners to fillet and the fillet radius

polyline : IList<Point3d>

(IList) The Polyline as point-list

Returns: PolyCurve

(PolyCurve) A PolyCurve object.

this.Points

Full Usage: this.Points

Parameters:
    () : unit

Returns: Point3d seq

Gets a lazy seq (= IEnumerable) of the points that make up the Polyline.

Extended Type: PolylineCurve

() : unit
Returns: Point3d seq

RhinoScriptSyntax.curveClosestParameter curveId point

Full Usage: RhinoScriptSyntax.curveClosestParameter curveId point

Parameters:
    curveId : Guid - (Guid) Identifier of a Curve object
    point : Point3d - (Point3d) Sampling point

Returns: float (float) The parameter of the closest point on the Curve.

Returns parameter of the point on a Curve that is closest to a test point.

Extended Type: RhinoScriptSyntax

curveId : Guid

(Guid) Identifier of a Curve object

point : Point3d

(Point3d) Sampling point

Returns: float

(float) The parameter of the closest point on the Curve.

RhinoScriptSyntax.curveClosestPoint curveId point

Full Usage: RhinoScriptSyntax.curveClosestPoint curveId point

Parameters:
    curveId : Guid - (Guid) Identifier of a Curve object
    point : Point3d - (Point3d) Sampling point

Returns: Point3d (Point3d) The closest point on the Curve.

Returns the point on a Curve that is closest to a test point.

Extended Type: RhinoScriptSyntax

curveId : Guid

(Guid) Identifier of a Curve object

point : Point3d

(Point3d) Sampling point

Returns: Point3d

(Point3d) The closest point on the Curve.

RhinoScriptSyntax.curveGeoClosestParameter curve point

Full Usage: RhinoScriptSyntax.curveGeoClosestParameter curve point

Parameters:
    curve : Curve - (Geometry.Curve) A Curve geometry object
    point : Point3d - (Point3d) Sampling point

Returns: float (float) The parameter of the closest point on the Curve.

Returns parameter of the point on a Curve that is closest to a test point.

Extended Type: RhinoScriptSyntax

curve : Curve

(Geometry.Curve) A Curve geometry object

point : Point3d

(Point3d) Sampling point

Returns: float

(float) The parameter of the closest point on the Curve.

RhinoScriptSyntax.curveGeoClosestPoint curve point

Full Usage: RhinoScriptSyntax.curveGeoClosestPoint curve point

Parameters:
    curve : Curve - (Geometry.Curve) A Curve geometry object
    point : Point3d - (Point3d) Sampling point

Returns: Point3d (Point3d) The closest point on the Curve.

Returns the point on a Curve that is closest to a test point.

Extended Type: RhinoScriptSyntax

curve : Curve

(Geometry.Curve) A Curve geometry object

point : Point3d

(Point3d) Sampling point

Returns: Point3d

(Point3d) The closest point on the Curve.

RhinoScriptSyntax.filletSkewLines makeSCurve radius direction lineA lineB

Full Usage: RhinoScriptSyntax.filletSkewLines makeSCurve radius direction lineA lineB

Parameters:
    makeSCurve : bool - (bool) Only relevant if curves are skew: make S-curve if true or kink if false
    radius : float - (float) Radius of filleting cylinder
    direction : Vector3d - (Vector3d) Direction of filleting cylinder, usually the intersection of the two planes to fillet; this might be the cross product of the two lines, but the lines might also be skew
    lineA : Line - (Line) First line to fillet, must not be perpendicular to direction; the lines might also be skew
    lineB : Line - (Line) Second line to fillet, must not be perpendicular to direction or first line; the lines might also be skew

Returns: NurbsCurve * Arc * Point3d (NurbsCurve*Arc*Point3d) Fillet curve geometry, the true fillet arc on cylinder (wrong ends), the point where fillet would be at radius 0 (same plane as arc).

Creates a fillet curve between two lines, the fillet might be an ellipse or free form but it always lies on the surface of a cylinder with the given direction and radius.

Extended Type: RhinoScriptSyntax

makeSCurve : bool

(bool) Only relevant if curves are skew: make S-curve if true or kink if false

radius : float

(float) Radius of filleting cylinder

direction : Vector3d

(Vector3d) Direction of filleting cylinder, usually the intersection of the two planes to fillet; this might be the cross product of the two lines, but the lines might also be skew

lineA : Line

(Line) First line to fillet, must not be perpendicular to direction; the lines might also be skew

lineB : Line

(Line) Second line to fillet, must not be perpendicular to direction or first line; the lines might also be skew

Returns: NurbsCurve * Arc * Point3d

(NurbsCurve*Arc*Point3d) Fillet curve geometry, the true fillet arc on cylinder (wrong ends), the point where fillet would be at radius 0 (same plane as arc).

RhinoScriptSyntax.filletSkewLinesTrims radius direction lineA lineB

Full Usage: RhinoScriptSyntax.filletSkewLinesTrims radius direction lineA lineB

Parameters:
    radius : float - (float) Radius of filleting cylinder
    direction : Vector3d - (Vector3d) Direction of filleting cylinder, usually the intersection of the two planes to fillet; this might be the cross product of the two lines, but the lines might also be skew
    lineA : Line - (Line) First line to fillet, must not be perpendicular to direction; the lines might also be skew
    lineB : Line - (Line) Second line to fillet, must not be perpendicular to direction or first line; the lines might also be skew

Returns: float (float) The needed trimming of two planar surfaces in order to fit a fillet of given radius. The lines can be anywhere on the plane (except parallel to axis).

Returns the needed trimming of two planar surfaces in order to fit a fillet of given radius. The lines can be anywhere on the plane (except parallel to axis).

Extended Type: RhinoScriptSyntax

radius : float

(float) Radius of filleting cylinder

direction : Vector3d

(Vector3d) Direction of filleting cylinder, usually the intersection of the two planes to fillet; this might be the cross product of the two lines, but the lines might also be skew

lineA : Line

(Line) First line to fillet, must not be perpendicular to direction; the lines might also be skew

lineB : Line

(Line) Second line to fillet, must not be perpendicular to direction or first line; the lines might also be skew

Returns: float

(float) The needed trimming of two planar surfaces in order to fit a fillet of given radius. The lines can be anywhere on the plane (except parallel to axis).

Type something to start searching.