SchemeExt:Sheet:cover-wire
From DocR21
Contents |
Action
Creates a solid body from a wire or a wire body containing a single wire.
Filename
scm/scmext/covr/covr_scm.cpp
APIs
Syntax
(sheet:cover-wire wire [surf|co] [acis-opts])
Argument Types
| Argument | Scheme Data Type |
|---|---|
| wire | wire-body or wire |
| surf | face |
| co | cover_options |
| acis-opts | acis-options |
Returns
unspecified | (entity ...)
Description
This extension covers a closed wire with a single face, creating an open solid body. It attempts to determine a surface which contains the edges of the input wire. If a surface can be calculated, it is used for the geometry of the face. If a surface cannot be calculated, a face with no geometric definition is created and a warning message displayed. The wire must be closed and not self-intersecting. When a face is defined with the optional surf argument or using the cover_options object, the underlying surface of that face is used for the geometry in covering the wire body.
It should be emphasized that when you specify the covering surface (either via the surf argument, or the cover_options object), the given wire body is covered using the geometry you specify. That is, a face is made where the boundary is a loop from the given wire body and the surface geometry is the covering surface. This method of using the Scheme command requires you to find a covering surface, but allows much more flexibility in how you cover a wire.
The cover_options argument can be used to specify a cover surface, and an allowable gap tolerance. If the gap tolerance is specified, the specified covering surface or the best fit plane are allowed to miss the circuit being covered by any amount less than the gap tolerance. When specifying gap tolerance, you may also specify a tolerize_entity_opts object to control precisely how the body is tolerized after covering. The default behavior if no tolerance is specified is to disallow gaps, and therefore have no need to tolerize. If a cover_options argument is specified, the returned value will be a list of faces created by the cover operation. Otherwise, the returned value will be unspecified (NULL).
Arguments
- wire is an input wire or wire body.
- surf when defined, the underlying surface of the specified face is used for the geometry in covering the wire body.
- co when defined, gives options about how the cover will be done. This argument is mutually exclusive with the surf argument. When co is defined, the returned value will be a list of faces created by the cover operation. Otherwise, the returned value will be unspecified (NULL).
- acis-opts contains journaling and versioning information.
Example: Specifying Covering Surface with cover_options
; sheet:cover-wire (part:clear) (define circle (wire-body (edge:circular (position 0 0 0) 3 0 360))) (define revolved-cubic (face:law "vec(u*cos(v), u*sin(v), 1 - u^3/27)" 0 10 0 (* 2 PI))) (entity:erase revolved-cubic) (define co (cover:options 'covering_surface revolved-cubic)) (define face_list (sheet:cover-wire circle co)) (define cface (car face_list))
