get_connection_zones

compas_wood.joinery.get_connection_zones(input_polyline_pairs, input_insertion_vectors=None, input_joints_types=None, input_three_valence_element_indices_and_instruction=None, input_adjacency=None, joint_parameters_and_types=None, search_type=0, scale=[1, 1, 1], output_type=4, flatten_output=False, joint_volume_extension=[0, 0, 0])[source]

detect connection zones between two polylines and generate joinery :Parameters: * input_polyline_pairs (list[Polyline]) – list of polylines of top and bottom outlines

  • input_insertion_vectors (list[list[Vector],list[Vector],list[Vector]], optional) – list of lists of insertion vectors for each polyline side: top, bottom and sides

  • input_joints_types (list[list[int],list[int],list[int]], optional) – list of lists of joint types for each polyline side: top, bottom and sides

  • input_three_valence_element_indices_and_instruction (list[list[int],list[int],list[int]], optional) – list of lists of 4 valence elements e.g. [[0],[0,4,1,4],[5,4,6,4]], the first item points to special corner cases: 0 - Annen Case 1 - Vidy Case

  • input_adjacency (list[int], optional) – list of adjacency between polylines elements and faces, often sides are ignored e.g. [0,1,-1,-1,5,8,-1,-1]

  • joint_parameters_and_types (list[double], optional) – a list of triplets: 300, 0.5, 3, // 1-9 ss_e_ip (side-to-side edge in-plane) 450, 0.64, 15, // 10-19 ss_e_op (side-to-side edge out-of-plane) 450, 0.5, 20, // 20-29 ts_e_p (top-to-side edge plane) 300, 0.5, 30, // 30-39 cr_c_ip (cross cutting in-plane) 6, 0.95, 40, // 40-49 tt_e_p (top-to-top edge plane) 300, 0.5, 58, // 50-59 ss_e_r (side-to-side edge rotated) 300, 1.0, 60 // 60-69 b (boundary)

  • search_type (int, optional) – 0 - side-to-side, 1 - cross, 2 - all

  • scale (list[double], optional) – a list of 3 doubles for scaling the joint for beams you might need bigger cuts for plates you might need smaller cuts

  • output_type (int, optional) – what_to_expose: 0 - Plate outlines 1 - wood::joint lines 2 - wood::joint areas 3 - wood::joint areas with bounding box 4 - wood::joint areas with bounding box and cut types

  • joint_volume_extension (list[double], optional) – a list of 3 doubles for extending the joint volume in x, y and z directions

Returns

list[Polyline] – A list of top and bottom polylines