1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-04-19 21:51:57 +02:00
This commit is contained in:
Justin Lin 2019-06-04 12:10:36 +08:00
parent ea39db6ca2
commit dd90b4c106
5 changed files with 34 additions and 17 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

33
docs/lib-trim_shape.md Normal file
View File

@ -0,0 +1,33 @@
# trim_shape
Given a tangled-edge shape. This function trims the shape to a non-tangled shape. It's intended to be a helper function after using `bijection_offset`.
**Since:** 1.3.
## Parameters
- `shape_pts` : The shape points.
- `from` : The index of the start point you want to trim.
- `to` : The index of the last point you want to trim.
- `epsilon` : An upper bound on the relative error due to rounding in floating point arithmetic. Default to 0.0001.
## Examples
include <hull_polyline2d.scad>;
include <trim_shape.scad>;
include <shape_taiwan.scad>;
include <bijection_offset.scad>;
include <midpt_smooth.scad>;
taiwan = shape_taiwan(50);
offseted = bijection_offset(taiwan, -2);
trimmed = trim_shape(offseted, 3, len(offseted) - 6);
smoothed = midpt_smooth(trimmed, 3);
#hull_polyline2d(taiwan, .1);
%translate([25, 0, 0])
hull_polyline2d(offseted, .2);
hull_polyline2d(smoothed, .1);
![trim_shape](images/lib-trim_shape-1.JPG)

View File

@ -15,6 +15,7 @@ shape = [
tris = triangulate(shape);
polygon(shape);
for(tri = tris) {
#offset(-.1)
polygon([for(idx = tri) shape[idx]]);

View File

@ -1,14 +0,0 @@
include <hull_polyline2d.scad>;
include <trim_shape.scad>;
include <shape_taiwan.scad>;
include <bijection_offset.scad>;
include <midpt_smooth.scad>;
taiwan = shape_taiwan(50);
offseted = bijection_offset(taiwan, -2);
trimmed = trim_shape(offseted, 3, len(offseted) - 6);
smoothed = midpt_smooth(trimmed, 3);
#hull_polyline2d(taiwan, .1);
%translate([25, 0, 0]) hull_polyline2d(offseted, .2);
hull_polyline2d(smoothed, .1);

View File

@ -1,6 +1,3 @@
trim_shape
trim_shape_demo.scad
triangulate
triangulate_demo.scad