Option:Check ff int

From DocR21

Jump to: navigation, search

Contents

Action

Sets additional validity checking of the body.

Name String

check_ff_int

Scheme

Type Values Default
boolean #f, #t #f

C++

Type Values Default
logical FALSE, TRUE FALSE

Description

This option enables additional validity checking of an entity from api_check_entity. The following extra checks performed when this option is set to TRUE:

  • Checks for improper face/face intersections (on faces containing or contained by the entity).
  • Checks for improper shell containment between two shells in the same lump.
  • Checks for improper lump containment (that is, one lump containing another).

If any problems are found, an ERROR_ENTITY object is returned on the insane_ents ENTITY_LIST.

Example

; check_ff_int 
; Create some geometry 
(define b1 (solid:block (position 0 -10 -10) (position 10 10 10))) 
;; b1 
(define b2 (solid:block (position 15 -10 -10) (position 25 10 10))) 
;; b2 
(bool:unite b1 b2) 
;; #entity 2 1 
; Allow bad body to be made 
(option:set "lop_ff_int" #f) 
;; #f 
; Try to make an invalid body 
(lop:move-faces (car (pick:face (ray (position 5 0 0)(gvector 1 0 0)))) (gvector 20 0 0))
;; #entity 2 1 
(option:set "check_ff_int" #t) 
;; #f 
(entity:check b1) 
;; entid 28750768 & 28779688: Error: coincident face intersection
;; entid 28750768 & 29147088: Error: improper face intersection
;; entid 28750768 & 29353072: Error: improper face intersection
;; entid 28958312 & 29821576: Error: coincident face intersection
;; entid 28958312 & 29147088: Error: improper face intersection
;; entid 28958312 & 29353072: Error: improper face intersection
;; entid 28959976 & 37552: Error: coincident face intersection
;; entid 28959976 & 29147088: Error: improper face intersection
;; entid 28959976 & 29353072: Error: improper face intersection
;; entid 28974256 & 29147088: Error: improper face intersection
;; entid 28974256 & 28767576: Error: coincident face intersection
;; entid 28974256 & 29353072: Error: improper face intersection
;; entid  28832680: Warning: shell intersection
;; with 29236400
;; entid  28832576: Warning: lump intersection
;; with 29223240
;; Body containing improper intersections created.
;; 
;; checked:
;;      2 lumps
;;      2 shells
;;      0 wires
;;      12 faces
;;      12 loops
;;      48 coedges
;;      24 edges
;;      16 vertices
;; ()
Personal tools
Live