solid:chamfer-vertices
List of: Scheme Extensions
Subjects: Blending, Modifying Models
Contents: Blending

Action: Creates planar chamfers on a list of vertices.

Filename: blnd/blnd_scm/blnd_scm.cxx

APIs: api_chamfer_vertices

Syntax: (solid:chamfer-vertices entity-list offset


[distancestraight=#t] [acis-opts])

Arg Types: entity-list entity | (entity ... )

offset real

distancestraight boolean

acis-opts acis-options

Returns: (entity ... )

Description: entity-list specifies a solid vertex entity or a list of solid vertex entities to be chamfered. offset specifies the chamfer offset to be applied to all edges (if any) of all vertices.


If there are any edges touching a vertex and distanceStraight is TRUE, offsets define the distance along the straight line between the vertex and the point on the edge. When distanceStraight is FALSE, offsets define the distance along the edge. The chamfer plane is positioned to pass through all these points. distanceStraight does not care if the edges are straight.


This extension returns a list of the owners of all the vertices affected by the chamfering. If all the vertices in the entity-list belong to a single solid, this extension returns only one element (the solid).


entity-list specifies a solid vertex entity or a list of solid vertex entities to be chamfered.


offset specifies the chamfer offset to be applied to all edges (if any) of all vertices.


distanceStraight is TRUE, offsets define the distance along the straight line between the vertex and the point on the edge. When distanceStraight is FALSE, offsets define the distance along the edge.


acis-opts contains optional parameters that are specific to the component and general ACIS options such as the journal and version information. The option argument (must be the last argument) is a class derived from acis-options.

Limitations: Offset cannot exceed the length of the associated edge. Vertices with 3 edges of mixed convexity may not chamfer successfully (then, a message "chamfer case not implemented" is generated). In this case, solid:chamfer-vertex might be a better choice.

Example: ; solid:chamfer-vertices

; Create geometry to illustrate this command.

(define H 10)

;; H

(define _H (- 0 H))

;; _H

(define block1 (solid:block (position _H _H _H)


(position H H H)))

;; block1

; Get a list of the vertices.

(define vertices1 (entity:vertices block1))

;; vertices1

; OUTPUT Original


; Planar chamfer the vertices of block1.

(define block2 (solid:chamfer-vertices vertices1 H))

;; block2

; OUTPUT Chamfer 1


; Get the list of resulting vertices.

(define vertices2 (entity:vertices block2))

;; vertices2

; Planar chamfer the new list of vertices.

(define chamfer2


(solid:chamfer-vertices vertices2 (/ H 2)))

;; chamfer2

; OUTPUT Result





Figure 2-28. solid:chamfer-vertices
PDF/BLND/02SC.PDF
HTM/DATA/BLND/BLND/02SC/0034.HTM