Wire

Declaration

class declaracad.occ.draw.Wire(parent=None, **kwargs)[source]

Bases: Edge

A Wire is a Path or series of Segment, Arcs, etc… All child items must be connected or an error will be thrown.

Attributes:
edges: List, optional

Edges used to build the wire.

Methods

activate_bottom_up()

Initialize the proxy on the bottom-up activation pass.

activate_proxy()

Activate the proxy object tree.

activate_top_down()

Initialize the proxy on the top-down activation pass.

child_added(child)

A reimplemented child added event handler.

child_moved(child)

A method invoked when a child is moved in the object.

child_removed(child)

A reimplemented child removed event handler.

destroy()

A reimplemented destructor.

find(name[, regex])

Find the first object in the subtree with the given name.

find_all(name[, regex])

Find all objects in the subtree with the given name.

freeze

Freeze the atom to prevent further modifications to its attributes.

get_member

Get the named member for the atom.

get_value_at(t[, derivative])

Get the value of the curve derivative at t.

has_observer

Get whether the atom has the given observer for a given topic.

has_observers

Get whether the atom has observers for a given topic.

initialize()

A reimplemented initializer.

insert_children(before, insert)

Insert children into this object at the given location.

members()

Get the members dictionary for the type.

notifications_enabled

Get whether notification is enabled for the atom.

notify

Call the registered observers for a given topic with positional and keyword arguments.

observe

Register an observer callback to observe changes on the given topic(s).

parent_changed(old, new)

A method invoked when the parent of the object changes.

points_of_discontinuity([tolerance])

Find points of discontinuity

render()

Generates and returns the actual shape from the declaration.

root_object()

Get the root object for this hierarchy.

set_notifications_enabled

Enable or disable notifications for the atom.

set_parent(parent)

Set the parent for this object.

suppress_notifications()

Disable member notifications within in a context.

traverse([depth_first])

Yield all of the objects in the tree, from this object down.

traverse_ancestors([root])

Yield all of the objects in the tree, from this object up.

unobserve

Unregister an observer callback for the given topic(s).

line_style

Examples

Wire:
Polyline:

closed = True points = [(0, 0, 0), (10, 0, 0), (10, 10, 0), (0, 10, 0)]

as_wire = True

Fixed

edges

Edges used to create this wire

points_of_discontinuity(tolerance: float = 0.5) list[Point][source]

Find points of discontinuity

Parameters:
tolerance: Float

The tolerance to use

Returns:
points: List[Point]

List of points where there is C1 discontinuity

proxy

Reference to the implementation control

Implementation

class declaracad.occ.impl.occ_wire.OccWire[source]

Bases: OccDependentShape, ProxyWire

Attributes:
ais_shape
curve
declaration
displayed
is_active

Test whether or not the proxy is fully activated.

location
reference
shape
tdf_label
topology
viewer

Methods

activate_bottom_up()

Activate the proxy tree for the bottom-up pass.

activate_top_down()

Activate the proxy for the top-down pass.

child_added(child)

Handle a child being added to the object.

child_removed(child)

Handle a child being removed from the object.

child_shapes()

Iterator of all child shapes

children()

Get the child objects for this object.

create_shape()

Create the toolkit shape for the proxy object.

destroy()

Destroy the proxy and any of its resources.

freeze

Freeze the atom to prevent further modifications to its attributes.

get_first_child()

Return shape to apply the operation to.

get_member

Get the named member for the atom.

get_transform()

Create a transform which rotates the default axis to align with the normal given by the position

has_observer

Get whether the atom has the given observer for a given topic.

has_observers

Get whether the atom has observers for a given topic.

init_layout()

Initialize the layout of the toolkit shape.

init_shape()

Initialize the state of the toolkit widget.

members()

Get the members dictionary for the type.

notifications_enabled

Get whether notification is enabled for the atom.

notify

Call the registered observers for a given topic with positional and keyword arguments.

observe

Register an observer callback to observe changes on the given topic(s).

parent()

Get the parent proxy object for this object.

set_notifications_enabled

Enable or disable notifications for the atom.

suppress_notifications()

Disable member notifications within in a context.

unobserve

Unregister an observer callback for the given topic(s).

update_shape([change])

Must be implmented in subclasses to create the shape when the dependent shapes change.

walk_shapes([ignore_display])

Iterator of all child shapes

clear_focus

ensure_hidden

ensure_visible

extract_edges

focus_next_child

focus_previous_child

get_bounding_box

get_value_at

has_focus

on_shape_changed

parent_shape

request_relayout

restyle

set_as_wire

set_axis

set_background

set_color

set_direction

set_display

set_enabled

set_focus

set_font

set_foreground

set_line_style

set_line_width

set_maximum_size

set_minimum_size

set_position

set_reverse

set_solve

set_status_tip

set_surface

set_texture

set_tool_tip

set_transparency

set_visible

ais_shape

The shape that was shown on the screen

create_shape()[source]

Create the toolkit shape for the proxy object.

Operations depend on child or properties so they cannot be created in the top down pass but rather must be done in the init_layout method.

reference

Update the class reference

update_shape(change=None)[source]

Must be implmented in subclasses to create the shape when the dependent shapes change.