Testing of the plagin

1. Construction and editing of a curve on a base polyline incident to a conic curve

2. ,

3. Creating and editing a curve by combined using the dual GD.

4. Editing a curve on base polyline with site of inflection

5. Editing a curve on a tangent polyline with site of inflection.

6. The creation (Clothoid + Arc) Spline on polyline with inflection

Script demonstrates the creation and editing the curve with fixed dynamic parameter on base polyline with inflection by using the NURBzS template of clothoid.

7. Creation (Clothoid + V-Curve) Spline with smooth curvature graph on the base polyline

8. Modeling a curve on base polyline with straight site.

8.1. Straight site in the middle

8.2. Straight end sites

9. Modeling a curve on tangent polyline with straight site.

9.1. Straight site in the middle

9.2. Straight end sites

10. Creation of spatial curves

 

Testing of the plagin

For testing the functionality and to demonstrate the capabilities of the plugin the number of scripts (script files) AutoCAD are prepared. These scripts can be used for learning how to use the plugin.

1. Construction and editing of a curve on a base polyline incident to a conic curve

1V_Crt_Inc_Plg.scr

The script draws a circle, draws base polyline on circle, creates v-curve on base polyline, approximates the v-curve by means of NURBzS curve of 6th degree.

To assess the quality of the curve script displays graphs of curvature and of evolute (Fig. 1.1.).

Figure 1.1. V-a curve precisely approximates a circle.

Then the script edits the base polyline and displays graphs of curvature and evolute of edited curve (Figure 1.2).

Figure 1.2. Edited curve.

The method of construction the v-curve allows to approximate geometrically exactly on base polyline a conical curves. When editing a closed v- curve remains high order of smoothness and smoothness of graph of curvature on the entire curve, including point circuit.

The method lets you edit locally convex closed curves with saving a high order of smoothness, with smooth change of curvature at all points of the closed curve including point of closing.

2. ,

2V_Crt_Tng_Plg.scr

The script draws a circle, draws tangent polyline on circle, creates v-curve on tangent polyline, approximates the v-curve by means of NURBzS curve of 6th degree.

To assess the quality of the curve script displays graphs of curvature and of evolute (figure 2.1).

Figure 2.1. V-curve exactly approximates a circle.

Then the script edits the tangent polyline and displays graphs of curvature and evolute of edited curve (Figure 2.2).

Figure 2.2. Edited curve.

The method of construction the v-curve allows to approximate  geometrically exactly on tangent polyline a conical curves. When editing a closed v- curve remains high order of smoothness and smoothness of graph of curvature on the entire curve, including point of closing.

3. Creating and editing a curve by combined using the dual GD.

3V_Crt_Inc_Tng.scr

Script draws a rectangle. Draws base polyline within the rectangle. Create v-curve on base polyline and displays the graphs of curvature and evolute. Curve intersects (not tangent) the sides of the rectangle (figure 3.1).

Figure 3.1. V-curve on base polyline.

Then script transfers to dual GD Tangents. Edits tangents so, that these coincide with sides of rectangle. Displays the graphs of curvature and evolute (figure 3.2).

 

Figure 3.2. V-curve within the rectangle.

 

Creating and editing a curve by combined using the dual GD allows you to model curve on base polyline with restrictions as fixed tangents.

 

4. Editing a curve on base polyline with site of inflection

4V_Edt_Inc_Infl.scr

Script demonstrates the creation and editing the curve on base polyline with inflection

Script draws a 3d polyline with site of inflection. Creates v-curve on 3D polyline as on a base polyline (figure 4.1).

Figure 4.1. V-curve on base polyline with inflection.

Edits tangent vector at point of inflection (figure 4.2).

Figure 4.2. Edited tangent vector at point of inflection.

 

Repeats editing the direction of tangent at point of inflection (figure 4.3).

Figure 4.3. Repeatly edited tangent vector at point of inflection.

Edits the 4th vertice. Displays the graphs of curvature and evolute. Displays the graph of curvature as function F(x) (figure 4.4).

 

Figure 2.2. Edited curve.

Curve has smooth graph of curvature.

 

For comparison Draws standard _Spline on edited points. Tests the standard _Spline (figure 4.5).

Figure 4.5. Primitive _Spline on the same base polyline.

Standart _Spline has strong oscillation of curvature.

In mode of editing Tangents you can purposefully edit the shape of the inflection site by changing the direction of the tangent and the position of the inflection point.

 

5. Editing a curve on a tangent polyline with site of inflection.

5V_Edt_Tng_Infl.scr

Script demonstrates the creation and editing the curve on base polyline with inflection.

Script draws a 3d polyline with site of inflection. Creates v-curve on 3D polyline as on a tangent polyline (figure 5.1).

 

Figure 4.1. V-curve on tangent polyline with inflection.

Edits the point of inflection on segment (figure 4.2).

Figure 5.2. The point of inflection has moved along the segment of inflection.

 

Then moves the point of inflection to another place along the segment of inflection (figure 5.3).

Figure 5.3. Repeatly edited point of inflection on segment.

 

Finally fixation of point of inflection on segment (figure 5.4).

Figure 5.4. Finally position of point of inflection on segment of inflection of tangent polyline.

 

In mode of editing the tangent lines method allows to edit not only the direction of tangent on site of inflection, but and position of point of inflection too.

6. The creation (Clothoid + Arc) Spline on polyline with inflection

6V_Crt_Clth_Infl.scr

Script demonstrates the creation and editing the curve with fixed dynamic parameter on base polyline with inflection by using the NURBzS template of clothoid.

Script creates the start site of Clothoid. End point of site is specified by fixed point (figure 6.1).

Figure 6.1. Site of clothoid with fixed end point.

Creates another site of clothoid wth fixed radius of curvature = 100 in the end point of site (figure 6.2).

 

Figure 6.2. Second site of clothoid with fixed radius of curvature in end point of site.

 

Draws circles on radius vector-lines at end points of sites of clothoid. Creates sites of 3D polylines on circles, creates v-curves on 3D polylines and approximate segments of circles by NURBzS curves (figure 6.3).

 

Figure 6.3. Created NURBzS segments of circles.

Unites the curve in one composed curve. Draws curvature and evolute graphs (figure 6.4)

Figure 6.4. Compound curve, composed of sites of clothoid and of circle segments.

 

Displays the graph of curvature as function F(x) (figure 6.5).

Figure 6.5. The graph of curvature as function F(x) along the length of curve.

Plagin implements the famous method of conctruction of clothoid-circle spline with approximatin by NURBzS curve of 6th degree.

7. Creation (Clothoid + V-Curve) Spline with smooth curvature graph on the base polyline

7V_Crt_Clth_VCrv.scr

Script demonstrates the procedure of modeling the smooth fillet between site of clothoid and v-curve.

Creates the site of clothoid with radius of curvature = 100 in end point (figure 7.1).

 

 

Figure 7.1. Site of clothoid.

Extracts from object the boundary parameters as primitives (figure 7.2).

Figure 7.2. The boundary parameters as primitives.

Creates 3D polyline as smoth extension of site of clothoid. Creates on base polyline v-curve (figure 7.3).

 

Figure 7.3. Creation v-curve on 3D polyline.

Edits the v-curve. Specifies the boundary parameters equal values of boundary parameters at end point of clothoid (figure 7.4).

 

Figure 7.4. Setting the boundary parameters for v-curve according the boundary parameters of clothoid.

Edits 2th point of base polyline with aim to obtain the smooth passing of clothoid curvature to curvature of v-curve (figure 7.5).

 

Figure 7.5. Editing the 2th vertice of base polyline.

Unites the site of clothoid with v-curve (figure 7.6).

 

Figure 7.6. Compound curve composed of site of clothoid and v-curve.

Displays the graph of curvature as function F(x), which clealy chows the common smoothness of compound curve (figure 7.7).

Figure 7.7. Linear graph of curvature on site of clothoid and smooth passing to site of v-curve.

Plagin allows to model sites of curve with linear change of curvature and with smooth change of curvature on the entire curve.

8. Modeling a curve on base polyline with straight site.

8.1. Straight site in the middle

8V_Crt_Inc_Str.scr

Script demonstrates the creation of v-curve on base polyline with straight site

Script draws 3D polyline with straight site in the middle (figure 8.1.1).

Important! Vertices must lie geometrically exactly on straight line.

 

Figure 8.1.1. Polyline with straight site.

Script creates v-curve on polyline. Displays graphs of curvature (figure 8.1.2).

Figure 8.1.2. V-curve on polyline with straight site.

Displays graph of curvature as function F(x) (figure 8.1.3).

Figure 8.1.3. Graph of curvature as function F(x).

For comparison Draws standard _Spline. Tests the standard _Spline. Standard _Spline has significant oscillation of curvature on segments (figure 8.1.4).

Figure 8.1.4. Standard _Spline of AutoCAD on the same polyline.

Displays the graph of curvature in increased view (figure 8.1.5).

Figure 8.1.5. Increased view of graph of curvature as function F(x).

The method of creating the v-curve allows to model geometrically exactlythe curves with straight sites.

8.2. Straight end sites

9V_Crt_Inc_End_Str

 

Script draws 3D polyline with end straight sites (figure 8.2.1).

Figure 8.2.1. 3D polyline with end straight sites.

The script creates v-curve on base polyline, approximates the v-curve by means of NURBzS curve of 6th degree.

To assess the quality of the curve script displays graphs of curvature and of evolute (Figure 8. 2.2.).

 

Figure 8.2.2. V-curve on base polyline.

Displays the graph of curvature as function F(x) (figure 8.2.3).

Figure 8.2.3. The graph of curvature as function F(x).

For comparison draws standard _Spline AutoCAD on the same polyline (figure 8.2.4). 

Figure 8.2.4. The standard spline _Spline AutoCAD

 

Displays the graphs of curvature of standard spline. Method of creation of _Spline AutoCAD does not realize the isogeometrical creation and _Spline has significant pulsation of curvature (figure 8.2.5).

Figure 8.2.5. Graphs of curvature of standard spline (figure 8.2.5).

The method of creation of v-curve allows to model robustly and geometrically exactly the curves on base polylines with end straight sites.

9. Modeling a curve on tangent polyline with straight site.

9.1. Straight site in the middle

10V_Crt_Inc_Str.scr

Script demonstrates the creation of v-curve on tangent polyline with straight site.

Script draws 3D polyline with straight site in the middle (figure 9.1.1).

 

Figure 9.1.1. Polyline with straight site.

Script creates v-curve on tangent polyline. Displays graphs of curvature (figure 9.1.2).

Figure 9.1.2. V-curve on polyline with straight site.

Displays graph of curvature as function F(x) (figure 9.1.3).

Figure 9.1.3. Graph of curvature as function F(x).

For comparison Draws standard _Spline. Tests the standard _Spline. Standard _Spline has significant oscillation of curvature on segments (figure 9.1.4).

Figure 9.1.4. Standard quadric spline of AutoCAD on the same polyline.

Displays the graph of curvature (figure 9.1.5).

Figure 9.1.5. Graph of curvature as F(x) of standard quadric spline AutoCAD

The standard quadric spline AutoCAD has breaks of graph of curvature in nods.

The method of creation of  v-curve allows to model robustly and geometrically exactly the curves on tangent polylines with straight site.

 

9.2. Straight end sites

11V_Crt_Inc_End_Str

Script draws 3D polyline with end straight sites (figure 8.2.1).

 

Figure 9.2.1. Polyline with straight site.

Script creates v-curve on tangent polyline. Displays graphs of curvature (figure 9.2.2).

 

Figure 9.2.2. V-curve on polyline with straight sites.

Displays graph of curvature as function F(x) (figure 9.2.3).

 

Figure 9.1.3. Graph of curvature as function F(x).

After executing the command V_Curve_Fix the all auxiliary primitives are removed, except of primitive base polyline.

Figure 9.2.4. The dual GD base polyline (yellow colored).

The method of creation of v-curve allows to model robustly and geometrically exactly the curves on tangent polylines with end straight sites.

 

 

10. Creation of spatial curves

 

Possibilities of creation the spatial curves of high quality are demonstrated on example of improving a spatial-screwed line, created by command _Helix.

In AutoCAD of versions before 2015 for approximation the primitive _Helix is used cubic NURBzS curve. So after unblocking the primitive by command _Explode you can use the NURBzS curve as sketch for creating the v-curve.

NURBzS v-.

In version 2015 is used cubic NURBS curve. It is recommended as base polyline to use the polyline of interpolated points, extracting it from determinant of curve by command V_Test_Brk as primitive 3D Polyline.

In procedure is used the method golden mean. (see Construction of a smooth curve by the method of "golden mean").

For creation of one turn of spatial spiral-screwed line are created three turns of primitive _Helix. Then added turns (top site and low site) are trimmed. The Golden mean of curve remains.

Script creates a spatial curve _Helix with low radius 150, of height 50, with top radius 50 (figure 10.1).

 

 

Figure 10.1. Primitive _Helix with three turns.

10.1. _Helix .

Script extracts the NURBS curve from the primitive, approximated the theoretical curve and displays the graphs of curvature (figure 10.2).

NURBS , ( 10.2).

10.2. NURBS .

Scipt displays the graph of evolute in a big scale.

. ( 10.3).

Figure 10.3. Evolute of primitive _Helix.

10.3. _Helix.

Script draws 3D polyline on primitive on nods of spline. Evidently, that nods coincide with initial analytical curve, represented by primitive (figure 10.4).

3D . , , ( 10.4).

Figure 10.4. 3D polyline on primitive _Helix.

10.4. 3D _Helix.

 

 

Then on 3D polyline as on base polyline create v-curve (figure 10.5).

3D , , v- ( 10.5)

Figure 10.5. V-curve created on base polyline.

10.5. V- .

Script extracts from three turns one turn of the middle (golden mean) (figure 10.6).

( ) ( 10.6).

 

Figure 10.6. Site golden mean of curve.

10.6. .

Script displays graphs of curvature and evolute of curve (figure 10.7).

( 10.7)

Figure 10.7. graphs of curvature and evolute of curve.

10.7. .

Script displays the graph of evolute in a big scale (figure 10.8).

( 10.8).

Figure 10.8. Almost ideal form of evolute of v-curve.

10.8. v-.

Compare with graph of evolute of cubic NURBS curve, approximating the primitive _Helix (see figure 10.3).

NURBS , _Helix (. 10.3).

Script displays the spatial NURBzS template of site of _Helix, graphs of curvature and evolute in SW view (figure 10.9).

NURBzS _Helix, ( 10.9).

 

Figure 10.9. Spatial curve with continius torsion.

10.9. .

Example demonstrates the possibility of approximation of spatial analytical curves with high accuracy and with high quality.

.

Created model of spline curve you can use as NURBzS template for modeling compound curves of 2th defree of smoothness with smooth change of curvature (see 7. Creation (Clothoid + V-Curve) Spline with smooth curvature graph on the base polyline).

NURBzS 2- (. . 7. (Clothoid + V-Curve) ).