mirror of
https://github.com/BelfrySCAD/BOSL2.git
synced 2025-12-07 19:32:06 +00:00
Compare commits
3 commits
266792b2a4
...
9346c4aae6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9346c4aae6 | ||
|
|
c2864d8478 | ||
|
|
39cdd4b783 |
2 changed files with 7 additions and 3 deletions
|
|
@ -4522,9 +4522,10 @@ function _get_obj_type(ind,geom,anchor,prof,edge_r,edge_joint,edge_k) =
|
|||
/// shift = given shift parameter
|
||||
|
||||
function _check_join_shift(ind,type,shift,flip) =
|
||||
type=="sphere" ? assert(shift==0, str("Cannot give a (nonzero) shift",ind," for joining to a spherical object")) [0,0,0]
|
||||
: type=="cyl" ? assert(is_finite(shift), str("Value shift",ind," for cylinder object must be a scalar")) shift*RIGHT
|
||||
: is_list(type) ? assert(is_finite(shift), str("Value shift",ind," for an edge must be a scalar")) shift*RIGHT
|
||||
type=="sphere" ? assert(shift==0 || shift==[0,0], str("Cannot give a (nonzero) shift",ind," for joining to a spherical object")) [0,0,0]
|
||||
: let(fixshift=function(s) is_vector(s,2) && s[0]==0 ? s[1] : s)
|
||||
type=="cyl" ? assert(is_finite(fixshift(shift)), str("Value shift",ind," for cylinder object must be a scalar or vector of the form [0,s]")) fixshift(shift)*RIGHT
|
||||
: is_list(type) ? assert(is_finite(fixshift(shift)), str("Value shift",ind," for an edge must be a scalar or vector of the form [0,s]")) fixshift(shift)*RIGHT
|
||||
: /*type==plane*/ assert(is_finite(shift) || is_vector(shift,2), str("Value for shift",ind," for planar face of object must be a scalar or 2-vector"))
|
||||
is_list(shift)? flip ? [shift.y,-shift.x]: shift
|
||||
: flip ? [0,-shift] : [shift,0];
|
||||
|
|
|
|||
|
|
@ -2221,6 +2221,9 @@ module path_sweep(shape, path, method="incremental", normal, closed, twist=0, tw
|
|||
{
|
||||
dummy = assert(is_region(shape) || is_path(shape,2), "\nshape must be a 2D path or region.")
|
||||
assert(in_list(atype, _ANCHOR_TYPES), "\nAnchor type must be \"hull\" or \"intersect\".");
|
||||
caps = !closed ? caps
|
||||
: assert(is_undef(caps) || caps==false || caps==[false,false], "Cannot specify caps when closed=true")
|
||||
false;
|
||||
trans_scale = path_sweep(shape, path, method, normal, closed, twist, twist_by_length, scale, scale_by_length,
|
||||
symmetry, last_normal, tangent, uniform, relaxed, caps, style, transforms=true,_return_scales=true);
|
||||
transforms = trans_scale[0];
|
||||
|
|
|
|||
Loading…
Reference in a new issue