1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-16 13:50:05 +01:00
dotSCAD/docs/lib3x-in_shape.md
2022-06-06 13:11:46 +08:00

879 B

in_shape

Checks whether a point is inside a shape.

Since: 1.3

Parameters

  • shapt_pts : The shape points.
  • pt : The point to be checked.
  • include_edge : If a point is on the edge of the shape, the function is default to return false. If include_edge is true, the function returns true.
  • epsilon : An upper bound on the relative error due to rounding in floating point arithmetic. Default to 0.0001.

Examples

use <shape_taiwan.scad>
use <in_shape.scad>

points = shape_taiwan(30);

%polygon(points);

n = 200;
xs = rands(-9, 9, n);
ys = rands(-16, 16, n);

pts = [
    for(i = [0:n - 1]) 
        let(p = [xs[i], ys[i]]) 
        if(in_shape(points, p, true))
        p
    ]; 

for(p = pts) {
    translate(p) 
        circle(.2); 
}

in_shape