1 of 82

compas�wood

Petras Vestartas

2 of 82

Agenda

01

02

03

04

Annen

Vidy

Beams

Cross Connections

00

Installation

3 of 82

Requirements: Install using Package Manager

4 of 82

5 of 82

Agenda

01

02

03

04

Annen

Vidy

Beams

Cross Connections

00

Installation

6 of 82

Cross Connectors

Command

w_loft_brep

cross_connectors

​

​

​

​

​

​

​

​

​

​

Command

w_dataset_cross_connectors

polylines [Polyline]

weld_radius 1.0

edge_vectors [Line]

face_positions [0.0]

face_thickness 2.0

divisions 2

divisions_length 15.0

connector_width 10.0

connector_height 10.0

connector_thickness 2.0

​

Command

w_parameters

search_type 1

​

​

​

​

​

​

​

​

​

​

Command

w_solver

cross_connectors

​

​

​

​

​

​

​

​

​

​

7 of 82

Cross Connectors

Command

w_cross_connectors

polylines [Polyline]

weld_radius 1.0

edge_vectors [Line]

face_positions [0.0]

face_thickness 2.0

divisions 2

divisions_length 15.0

connector_width 10.0

connector_height 10.0

connector_thickness 2.0

​

8 of 82

Cross Connectors

Command

Esc

Command

DupEdge

Command

Line

Mouse

Hide “polylines“ layer

Mouse

Unhide “polylines“ layer

9 of 82

Cross Connectors

Command

w_cross_connectors

polylines [Polyline]

weld_radius 1.0

edge_vectors [Line]

face_positions [0.0]

face_thickness 2.0

divisions 2

divisions_length 15.0

connector_width 10.0

connector_height 10.0

connector_thickness 2.0

​

10 of 82

Cross Connectors

Command

w_cross_connectors

polylines [Polyline]

weld_radius 1.0

edge_vectors [Line]

face_positions [0.0]

face_thickness 2.0

divisions 2

divisions_length 15.0

connector_width 10.0

connector_height 10.0

connector_thickness 2.0

​

11 of 82

Cross Connectors

Command

w_parameters

search_type 1

​

​

​

​

​

​

​

​

​

​

12 of 82

Cross Connectors

Command

w_solver

default

cross_connectors

​

​

​

​

​

​

​

​

​

13 of 82

Cross Connectors

Post-processing

Command

w_loft_brep

default

cross_connectors

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

14 of 82

HOW CAN I USE

MY GEOMETRY?

15 of 82

Cross Connectors

Command

Esc

Command

Rectangle

Command

Line

16 of 82

Cross Connectors

Command

w_cross_connectors

polylines [Polyline]

weld_radius 1.0

edge_vectors [Line]

face_positions [0.0]

face_thickness 2.0

divisions 2

divisions_length 15.0

connector_width 10.0

connector_height 10.0

connector_thickness 2.0

​

17 of 82

Cross Connectors

Command

w_solver

default

cross_connectors

​

​

​

​

​

​

​

​

​

18 of 82

Cross Connectors

Sub-menu

w_loft_brep

polylines

joinery

Post-processing

Command

w_loft_brep

default

cross_connectors

19 of 82

Agenda

01

02

03

04

Annen

Vidy

Beams

Cross Connections

00

Installation

20 of 82

Annen

Command

w_loft_brep

cross_connectors

​

​

​

​

​

​

​

​

​

​

Command

w_dataset_annen

Select a surface

Command

w_parameters

search_type 0

​

​

​

​

​

​

​

​

​

​

Command

w_solver

cross_connectors

​

​

​

​

​

​

​

​

​

​

Sub-menu 1 : mesh

w_dataset_annen

u_divisions 4

v_division_dist 900

shift 0.5

Scale 0.05799

Sub-menu 2 : plates

w_dataset_annen

edge_rotation 1

edge_offset 0.5

box_height 760

top_plate_inlet 80

plate_thickness 40

ortho Yes

21 of 82

Annen

Command

w_dataset_annen

Select a surface

22 of 82

Annen

Sub-menu 1 : mesh

w_dataset_annen

u_divisions 4

v_division_dist 900

shift 0.5

Scale 0.05799

Enter

23 of 82

Annen

Sub-menu 2 : plates

w_dataset_annen

edge_rotation 1

edge_offset 0.5

box_height 760

top_plate_inlet 80

plate_thickness 40

ortho Yes

Enter

24 of 82

Annen

Command

w_parameters

search_type 0

​

​

​

​

​

​

​

​

​

​

25 of 82

Annen

Command

w_solver

default

annen

…

​

​

​

​

​

​

​

​

26 of 82

Annen

Post-processing

Command

w_loft_brep

default

annen

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

27 of 82

HOW CAN I USE

MY GEOMETRY?

28 of 82

Dataset “…annen_box”

Command

w_parameters

search_type 0

division length (10-n) 200

​

​

​

​

​

​

​

​

​

Command

w_solver

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

​

​

​

​

​

​

​

​

​

Command

w_dataset_closest_points_joints

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

Command

w_dataset_closest_lines_insertion

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

Command

w_dataset

library

polylines

Post-processing

Command

w_loft_brep

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

29 of 82

Dataset “…annen_box”

Command

w_dataset

library

polylines

30 of 82

Dataset “…annen_box”

Command

Dot

31 of 82

Dataset “…annen_box”

Command

w_dataset_closest_points_joints

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

32 of 82

Dataset “…annen_box”

Command

Line

33 of 82

Dataset “…annen_box”

Command

w_dataset_closest_lines_insertion

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

34 of 82

Dataset “…annen_box”

Command

w_parameters

search_type 0

division length (10-n) 200

​

​

​

​

​

​

​

​

​

35 of 82

Dataset “…annen_box”

Command

w_solver

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

…

​

​

​

​

​

​

​

36 of 82

Dataset “…annen_box”

Post-processing

Command

w_loft_brep

default

type_plates_name_top_to_side_and_side_to_side_outofplane_annen_box

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

37 of 82

MY GEOMETRY

NOT DATASET!

38 of 82

Dataset “my geometry”

Command

w_dataset

library

polylines

Command

w_parameters

search_type 0

division length (20-29) 25

​

​

​

​

39 of 82

Agenda

01

02

03

04

Annen

Vidy

Beams

Cross Connections

00

Installation

40 of 82

Dataset “… vidychapel_corner”

Command

w_parameters

search_type 0

division length (10-n) 175

parameter (0-1) 0.64

type (10-n) 15

three_valence

[[1], [14, 15, 17, 16]]

extension z-axis -10

​

​

​

​

​

Command

w_solver

default

type_plates_name_joint_linking_vidychapel_corner

​

​

​

​

​

​

​

​

​

​

Command

w_dataset

library

polylines

Post-processing

Command

w_loft_brep

default

type_plates_name_joint_linking_vidychapel_corner

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

41 of 82

Dataset “…vidychapel_corner”

Command

w_dataset

library

polylines

42 of 82

Dataset “…vidychapel_corner”

Command

w_parameters

search_type 0

division length (10-n) 175

parameter (0-1) 0.64

type (10-n) 15

three_valence

[[1], [14, 15, 17, 16],

[27, 26, 28, 29]]

extension z-axis -10

adjacency

[[14, 15, -1, -1], [16, 17, -1, -1], [27, 26, -1, -1], [29, 28, -1, -1]]

​

​

​

43 of 82

Dataset “…vidychapel_corner”

Command

Propeties

44 of 82

Dataset “…vidychapel_corner”

Command

w_parameters

search_type 0

division length (10-n) 175

parameter (0-1) 0.64

type (10-n) 15 (16)

three_valence

[[1], [14, 15, 17, 16],

[27, 26, 28, 29]]

extension z-axis -10

adjacency

[[14, 15, -1, -1], [16, 17, -1, -1], [27, 26, -1, -1], [29, 28, -1, -1]]

​

Command

Propeties

Connected

element_id 16-17

Connected

element_id 14-15

Connect 2nd Panel

element_id 14-17

Connect 2nd Panel

element_id 15-16

45 of 82

Dataset “…vidychapel_corner”

Command

w_solver

default

type_plates_name_joint_linking_vidychapel_corner

​

…

​

​

​

​

​

​

​

46 of 82

Dataset “…vidychapel_corner”

Post-processing

Command

w_loft_brep

default

type_plates_name_joint_linking_vidychapel_corner

Post-processing

Sub-menu

w_loft_brep

polylines

joinery

47 of 82

Dataset “…vidychapel_full”

Note

Datasets includes all the parameters for adjacency and three valence.

48 of 82

Other datasets?

49 of 82

Dataset “folded_plates”

50 of 82

Agenda

01

02

03

04

Annen

Vidy

CC

Cross Connections

00

Installation

51 of 82

Object and Plane

Add attributes

52 of 82

Element

Shape

Plane

53 of 82

0 Create Element : w_raw_from_brep

Element is initialized in WorldXY, where element’s plane is created.

0_create_element.3dm

54 of 82

1 Get Plane: w_raw_plane

1_element_frame.3dm

Because the plane feature geometry orientation can be found in any position.

55 of 82

2 Get Axis: w_raw_axis

2_element_axis.3dm

We also need to store geometry attributes.

56 of 82

3 Orient Element : w_raw_orient > plane > line > points

3_element_orient.3dm

Plane helps to orient geometry to target planes.

57 of 82

4 Change Element Shape: w_raw_shape

4_element_shape.3dm

58 of 82

4 Change Element Shape: w_raw_shape

4_element_shape.3dm

59 of 82

Features�Joinery and Custom Cuts

For Subtractive Fabrication

60 of 82

5 Features: w_raw_features > add > replace > get > clear

5_element_features.3dm

61 of 82

5 Features: w_raw_features > add > replace > get > clear

5_element_features.3dm

62 of 82

5 Features: w_raw_features > add > replace > get > clear

5_element_features.3dm

63 of 82

5 Features: w_raw_features > add > replace > get > clear

5_element_features.3dm

64 of 82

6 Apply Features: w_raw_boolean

6_element_boolean.3dm

65 of 82

7 Multiple: w_raw_boolean + w_raw_shape

change shape

boolean difference

simplified shape

7_element_boolean_and_replace_shape.3dm

66 of 82

8 Volume: w_parameters

8_volumes.3dm

Command

w_parameters

search_type 2

output_typety 3

type (1-9) 5

type (20-29) 23

type (30-33) 33

parameter (0-1) 0.33

​

​

​

​

​

67 of 82

9 Joints: w_parameters + w_raw_find_volumes + w_raw_solver

9_joints.3dm

68 of 82

9 Joints: w_element_boolean

9_joints.3dm

69 of 82

10 Joints: w_raw_find_volumes

10_custom_cross_joints.3dm

70 of 82

10 Joints: w_parameters

10_custom_cross_joints.3dm

Command

w_parameters

search_type 2

joints 3

type (30-39) 39

​

Command

w_parameters

cr_i_ip_positive

cr_i_ip_negative

​

​

above zero

below zero

71 of 82

10 Joints: w_raw_boolean

10_custom_cross_joints.3dm

72 of 82

10 Joints: w_raw_find_volumes

11_custom_side_to_side.3dm

73 of 82

10 Joints: w_parameters

11_custom_side_to_side.3dm

Command

w_parameters

search_type 2

joints 3

type (30-39) 39

​

Command

w_parameters

ss_i_ip_positive

ss_i_ip_negative

​

​

positive

x-axis

negative

x-axis

74 of 82

10 Joints: w_raw_boolean

11_custom_side_to_side.3dm

75 of 82

10 Joints: w_raw_find_volumes

12_custom_top_to_side_joints.3dm

76 of 82

10 Joints: w_parameters

12_custom_top_to_side_joints.3dm

Command

w_parameters

search_type 2

joints 3

type (30-39) 39

​

Command

w_parameters

te_i_ep_positive

ss_i_ip_negative

​

​

above zero

below zero

77 of 82

10 Joints: w_raw_boolean

12_custom_top_to_side_joints.3dm

78 of 82

11 Features Parallel: w_raw_features_parallel

11_parallel_beams.3dm

Command

w_raw_features_parallel

elements

features_positive

features_negative

79 of 82

11 Features Parallel: w_raw_features_parallel

11_parallel_beams.3dm

Command

w_raw_features_parallel

elements

features_positive

features_negative

80 of 82

11 Features Parallel: w_raw_orient

14_parallel_beams.3dm

Command

w_raw_features_parallel

elements

points

81 of 82

11 Features Parallel: w_raw_features_parallel

14_parallel_beams.3dm

Command

w_raw_features_parallel

elements

features_positive

features_negative

82 of 82

11 Features Parallel: w_raw_features_parallel

15_parallel_beams_intersection.3dm

Command

w_raw_features_parallel

elements

features_positive

features_negative

display_features Yes

intersection Yes

​