Option:Lop check invert

From DocR21

Jump to: navigation, search

Contents

Action

Controls the checking of invalid faces made in LOP.

Name String

lop_check_invert

Scheme

Type Values Default
boolean #f, #t #t

C++

Type Values Default
logical FALSE, TRUE TRUE

Description

When this option is on, LOP checks faces and prevents invalid (inverted or inside-out)body faces from being made. If this option is off, body faces may be made and subsequently repaired using the Repair Body Intersections Component.

Example

; lop_check_invert
; Allow inverted face, then repair body
(define b1 (solid:block
    (position -25 -25 -25) (position 25 25 25)))
;; b1
(define b2 (solid:cylinder (position 0 0 0)
    (position 0 0 50)10))
;; b2
(solid:subtract b1 b2)
;; #[entity 2 1]
(render)
;; ()
; Pull hole out of block into a boss, switch off
; lop_invert_checking so invalid inverted body face
; can be made
(option:set "lop_check_invert" #f)
;; #t
 
;;Turn off the rbi option in lop_options
(lop:offset-faces (pick:face (ray (position 0 0 0) (gvector 0 0 1))) 50 (lop:options "rbi" #f))
 
;; #[entity 2 1]
; Now repair the body
(rbi:rep-self-int b1)
;; #[entity 2 1]
(render)
;; ()
Personal tools
Live