fake-bpy-module 20240224__py3-none-any.whl → 20240326__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- addon_utils/__init__.pyi +54 -10
- animsys_refactor/__init__.pyi +36 -6
- aud/__init__.pyi +132 -125
- bgl/__init__.pyi +2545 -546
- bl_app_override/__init__.pyi +14 -3
- bl_app_override/helpers/__init__.pyi +24 -2
- bl_app_template_utils/__init__.pyi +19 -4
- bl_console_utils/autocomplete/complete_calltip/__init__.pyi +24 -5
- bl_console_utils/autocomplete/complete_import/__init__.pyi +14 -3
- bl_console_utils/autocomplete/complete_namespace/__init__.pyi +24 -5
- bl_console_utils/autocomplete/intellisense/__init__.pyi +9 -2
- bl_i18n_utils/bl_extract_messages/__init__.pyi +74 -15
- bl_i18n_utils/merge_po/__init__.pyi +4 -1
- bl_i18n_utils/settings/__init__.pyi +53 -6
- bl_i18n_utils/utils/__init__.pyi +332 -44
- bl_i18n_utils/utils_cli/__init__.pyi +29 -6
- bl_i18n_utils/utils_languages_menu/__init__.pyi +4 -1
- bl_i18n_utils/utils_rtl/__init__.pyi +9 -2
- bl_keymap_utils/io/__init__.pyi +44 -9
- bl_keymap_utils/keymap_from_toolbar/__init__.pyi +4 -1
- bl_keymap_utils/keymap_hierarchy/__init__.pyi +4 -1
- bl_keymap_utils/platform_helpers/__init__.pyi +9 -2
- bl_keymap_utils/versioning/__init__.pyi +4 -1
- bl_math/__init__.pyi +3 -3
- bl_operators/__init__.pyi +9 -2
- bl_operators/add_mesh_torus/__init__.pyi +171 -37
- bl_operators/anim/__init__.pyi +1065 -226
- bl_operators/assets/__init__.pyi +427 -92
- bl_operators/bmesh/find_adjacent/__init__.pyi +44 -9
- bl_operators/clip/__init__.pyi +1342 -287
- bl_operators/console/__init__.pyi +647 -140
- bl_operators/constraint/__init__.pyi +524 -112
- bl_operators/file/__init__.pyi +396 -84
- bl_operators/freestyle/__init__.pyi +532 -113
- bl_operators/geometry_nodes/__init__.pyi +2412 -596
- bl_operators/image/__init__.pyi +380 -82
- bl_operators/mesh/__init__.pyi +401 -85
- bl_operators/node/__init__.pyi +1756 -384
- bl_operators/object/__init__.pyi +2022 -552
- bl_operators/object_align/__init__.pyi +145 -31
- bl_operators/object_quick_effects/__init__.pyi +555 -124
- bl_operators/object_randomize_transform/__init__.pyi +136 -32
- bl_operators/presets/__init__.pyi +3516 -708
- bl_operators/rigidbody/__init__.pyi +401 -85
- bl_operators/screen_play_rendered_anim/__init__.pyi +129 -29
- bl_operators/sequencer/__init__.pyi +731 -149
- bl_operators/spreadsheet/__init__.pyi +145 -30
- bl_operators/userpref/__init__.pyi +3416 -824
- bl_operators/uvcalc_follow_active/__init__.pyi +149 -32
- bl_operators/uvcalc_lightmap/__init__.pyi +187 -34
- bl_operators/uvcalc_transform/__init__.pyi +344 -73
- bl_operators/vertexpaint_dirt/__init__.pyi +140 -30
- bl_operators/view3d/__init__.pyi +697 -146
- bl_operators/wm/__init__.pyi +6287 -1533
- bl_previews_utils/bl_previews_render/__init__.pyi +34 -7
- bl_rna_utils/data_path/__init__.pyi +12 -2
- bl_text_utils/external_editor/__init__.pyi +4 -1
- bl_ui/__init__.pyi +504 -106
- bl_ui/anim/__init__.pyi +164 -33
- bl_ui/asset_shelf/__init__.pyi +146 -31
- bl_ui/generic_ui_list/__init__.pyi +471 -99
- bl_ui/node_add_menu/__init__.pyi +196 -40
- bl_ui/node_add_menu_compositor/__init__.pyi +3017 -621
- bl_ui/node_add_menu_geometry/__init__.pyi +8060 -1625
- bl_ui/node_add_menu_shader/__init__.pyi +1709 -348
- bl_ui/node_add_menu_texture/__init__.pyi +1502 -305
- bl_ui/properties_animviz/__init__.pyi +32 -2
- bl_ui/properties_collection/__init__.pyi +787 -179
- bl_ui/properties_constraint/__init__.pyi +28635 -5523
- bl_ui/properties_data_armature/__init__.pyi +1905 -448
- bl_ui/properties_data_bone/__init__.pyi +1560 -336
- bl_ui/properties_data_camera/__init__.pyi +2269 -494
- bl_ui/properties_data_curve/__init__.pyi +2362 -534
- bl_ui/properties_data_curves/__init__.pyi +951 -203
- bl_ui/properties_data_empty/__init__.pyi +317 -69
- bl_ui/properties_data_gpencil/__init__.pyi +2924 -734
- bl_ui/properties_data_grease_pencil/__init__.pyi +1631 -188
- bl_ui/properties_data_lattice/__init__.pyi +472 -104
- bl_ui/properties_data_light/__init__.pyi +1570 -337
- bl_ui/properties_data_lightprobe/__init__.pyi +938 -208
- bl_ui/properties_data_mesh/__init__.pyi +3205 -767
- bl_ui/properties_data_metaball/__init__.pyi +774 -170
- bl_ui/properties_data_modifier/__init__.pyi +1554 -328
- bl_ui/properties_data_pointcloud/__init__.pyi +821 -194
- bl_ui/properties_data_shaderfx/__init__.pyi +154 -34
- bl_ui/properties_data_speaker/__init__.pyi +782 -168
- bl_ui/properties_data_volume/__init__.pyi +1243 -281
- bl_ui/properties_freestyle/__init__.pyi +4071 -1030
- bl_ui/properties_grease_pencil_common/__init__.pyi +2399 -483
- bl_ui/properties_mask_common/__init__.pyi +1256 -249
- bl_ui/properties_material/__init__.pyi +2351 -542
- bl_ui/properties_material_gpencil/__init__.pyi +1590 -365
- bl_ui/properties_object/__init__.pyi +2179 -512
- bl_ui/properties_output/__init__.pyi +2956 -705
- bl_ui/properties_paint_common/__init__.pyi +947 -140
- bl_ui/properties_particle/__init__.pyi +8322 -1970
- bl_ui/properties_physics_cloth/__init__.pyi +2254 -508
- bl_ui/properties_physics_common/__init__.pyi +200 -44
- bl_ui/properties_physics_dynamicpaint/__init__.pyi +4454 -965
- bl_ui/properties_physics_field/__init__.pyi +1695 -364
- bl_ui/properties_physics_fluid/__init__.pyi +6127 -1280
- bl_ui/properties_physics_geometry_nodes/__init__.pyi +157 -32
- bl_ui/properties_physics_rigidbody/__init__.pyi +1254 -278
- bl_ui/properties_physics_rigidbody_constraint/__init__.pyi +2053 -483
- bl_ui/properties_physics_softbody/__init__.pyi +2394 -542
- bl_ui/properties_render/__init__.pyi +8312 -1933
- bl_ui/properties_scene/__init__.pyi +2211 -539
- bl_ui/properties_texture/__init__.pyi +4185 -1013
- bl_ui/properties_view_layer/__init__.pyi +2803 -664
- bl_ui/properties_workspace/__init__.pyi +626 -148
- bl_ui/properties_world/__init__.pyi +1092 -234
- bl_ui/space_clip/__init__.pyi +11475 -2805
- bl_ui/space_console/__init__.pyi +967 -202
- bl_ui/space_dopesheet/__init__.pyi +4260 -966
- bl_ui/space_filebrowser/__init__.pyi +4852 -1187
- bl_ui/space_graph/__init__.pyi +3251 -702
- bl_ui/space_image/__init__.pyi +12219 -2968
- bl_ui/space_info/__init__.pyi +964 -200
- bl_ui/space_nla/__init__.pyi +2756 -584
- bl_ui/space_node/__init__.pyi +5661 -1265
- bl_ui/space_outliner/__init__.pyi +2294 -478
- bl_ui/space_properties/__init__.pyi +417 -92
- bl_ui/space_sequencer/__init__.pyi +12436 -3009
- bl_ui/space_spreadsheet/__init__.pyi +184 -36
- bl_ui/space_statusbar/__init__.pyi +135 -30
- bl_ui/space_text/__init__.pyi +2556 -542
- bl_ui/space_time/__init__.pyi +1151 -243
- bl_ui/space_toolsystem_common/__init__.pyi +368 -66
- bl_ui/space_toolsystem_toolbar/__init__.pyi +1378 -228
- bl_ui/space_topbar/__init__.pyi +4214 -887
- bl_ui/space_userpref/__init__.pyi +13920 -3468
- bl_ui/space_view3d/__init__.pyi +43701 -10599
- bl_ui/space_view3d_toolbar/__init__.pyi +16380 -3860
- bl_ui/utils/__init__.pyi +42 -4
- bl_ui_utils/bug_report_url/__init__.pyi +4 -1
- bl_ui_utils/layout/__init__.pyi +4 -1
- blend_render_info/__init__.pyi +13 -3
- blf/__init__.pyi +5 -7
- bmesh/__init__.pyi +7 -7
- bmesh/geometry/__init__.pyi +5 -5
- bmesh/ops/__init__.pyi +490 -504
- bmesh/types/__init__.pyi +268 -262
- bmesh/utils/__init__.pyi +55 -55
- bpy/__init__.pyi +2 -2
- bpy/app/__init__.pyi +4 -5
- bpy/app/handlers/__init__.pyi +36 -36
- bpy/app/icons/__init__.pyi +8 -10
- bpy/app/timers/__init__.pyi +9 -11
- bpy/app/translations/__init__.pyi +20 -22
- bpy/msgbus/__init__.pyi +3 -12
- bpy/ops/action/__init__.pyi +350 -305
- bpy/ops/anim/__init__.pyi +464 -426
- bpy/ops/armature/__init__.pyi +392 -360
- bpy/ops/asset/__init__.pyi +166 -129
- bpy/ops/boid/__init__.pyi +64 -37
- bpy/ops/brush/__init__.pyi +78 -72
- bpy/ops/buttons/__init__.pyi +136 -122
- bpy/ops/cachefile/__init__.pyi +128 -123
- bpy/ops/camera/__init__.pyi +22 -24
- bpy/ops/clip/__init__.pyi +844 -735
- bpy/ops/cloth/__init__.pyi +10 -11
- bpy/ops/collection/__init__.pyi +38 -38
- bpy/ops/console/__init__.pyi +170 -141
- bpy/ops/constraint/__init__.pyi +156 -159
- bpy/ops/curve/__init__.pyi +518 -461
- bpy/ops/curves/__init__.pyi +188 -159
- bpy/ops/cycles/__init__.pyi +20 -18
- bpy/ops/dpaint/__init__.pyi +40 -30
- bpy/ops/ed/__init__.pyi +136 -107
- bpy/ops/export_anim/__init__.pyi +18 -19
- bpy/ops/export_mesh/__init__.pyi +26 -27
- bpy/ops/export_scene/__init__.pyi +313 -334
- bpy/ops/file/__init__.pyi +394 -304
- bpy/ops/fluid/__init__.pyi +114 -63
- bpy/ops/font/__init__.pyi +272 -245
- bpy/ops/geometry/__init__.pyi +92 -87
- bpy/ops/gizmogroup/__init__.pyi +24 -21
- bpy/ops/gpencil/__init__.pyi +1530 -1476
- bpy/ops/graph/__init__.pyi +680 -659
- bpy/ops/grease_pencil/__init__.pyi +510 -390
- bpy/ops/image/__init__.pyi +650 -603
- bpy/ops/import_anim/__init__.pyi +26 -27
- bpy/ops/import_curve/__init__.pyi +6 -7
- bpy/ops/import_mesh/__init__.pyi +18 -21
- bpy/ops/import_scene/__init__.pyi +86 -95
- bpy/ops/info/__init__.pyi +68 -55
- bpy/ops/lattice/__init__.pyi +70 -63
- bpy/ops/marker/__init__.pyi +110 -111
- bpy/ops/mask/__init__.pyi +352 -308
- bpy/ops/material/__init__.pyi +24 -12
- bpy/ops/mball/__init__.pyi +72 -75
- bpy/ops/mesh/__init__.pyi +2052 -2088
- bpy/ops/nla/__init__.pyi +369 -313
- bpy/ops/node/__init__.pyi +944 -805
- bpy/ops/object/__init__.pyi +2662 -2461
- bpy/ops/outliner/__init__.pyi +582 -431
- bpy/ops/paint/__init__.pyi +605 -516
- bpy/ops/paintcurve/__init__.pyi +72 -60
- bpy/ops/palette/__init__.pyi +54 -46
- bpy/ops/particle/__init__.pyi +302 -245
- bpy/ops/pose/__init__.pyi +366 -330
- bpy/ops/poselib/__init__.pyi +78 -64
- bpy/ops/preferences/__init__.pyi +361 -341
- bpy/ops/ptcache/__init__.pyi +56 -38
- bpy/ops/render/__init__.pyi +120 -117
- bpy/ops/rigidbody/__init__.pyi +114 -97
- bpy/ops/scene/__init__.pyi +302 -240
- bpy/ops/screen/__init__.pyi +414 -363
- bpy/ops/script/__init__.pyi +20 -18
- bpy/ops/sculpt/__init__.pyi +414 -452
- bpy/ops/sculpt_curves/__init__.pyi +42 -43
- bpy/ops/sequencer/__init__.pyi +1094 -1053
- bpy/ops/sound/__init__.pyi +214 -206
- bpy/ops/spreadsheet/__init__.pyi +34 -28
- bpy/ops/surface/__init__.pyi +108 -114
- bpy/ops/text/__init__.pyi +432 -350
- bpy/ops/text_editor/__init__.pyi +10 -11
- bpy/ops/texture/__init__.pyi +32 -21
- bpy/ops/transform/__init__.pyi +801 -854
- bpy/ops/ui/__init__.pyi +254 -185
- bpy/ops/uilist/__init__.pyi +20 -23
- bpy/ops/uv/__init__.pyi +618 -626
- bpy/ops/view2d/__init__.pyi +162 -161
- bpy/ops/view3d/__init__.pyi +669 -658
- bpy/ops/wm/__init__.pyi +2433 -2415
- bpy/ops/workspace/__init__.pyi +54 -31
- bpy/ops/world/__init__.pyi +8 -4
- bpy/path/__init__.pyi +111 -68
- bpy/props/__init__.pyi +263 -267
- bpy/types/__init__.pyi +86789 -85719
- bpy/utils/__init__.pyi +265 -123
- bpy/utils/previews/__init__.pyi +103 -17
- bpy/utils/units/__init__.pyi +19 -22
- bpy_extras/__init__.pyi +0 -4
- bpy_extras/anim_utils/__init__.pyi +11 -46
- bpy_extras/asset_utils/__init__.pyi +3 -12
- bpy_extras/id_map_utils/__init__.pyi +0 -2
- bpy_extras/image_utils/__init__.pyi +2 -2
- bpy_extras/io_utils/__init__.pyi +30 -27
- bpy_extras/keyconfig_utils/__init__.pyi +4 -1
- bpy_extras/mesh_utils/__init__.pyi +18 -18
- bpy_extras/node_utils/__init__.pyi +4 -3
- bpy_extras/object_utils/__init__.pyi +25 -26
- bpy_extras/view3d_utils/__init__.pyi +33 -38
- bpy_restrict_state/__init__.pyi +14 -1
- bpy_types/__init__.pyi +3873 -997
- console_python/__init__.pyi +41 -7
- console_shell/__init__.pyi +24 -5
- {fake_bpy_module-20240224.dist-info → fake_bpy_module-20240326.dist-info}/METADATA +1 -1
- fake_bpy_module-20240326.dist-info/RECORD +343 -0
- {fake_bpy_module-20240224.dist-info → fake_bpy_module-20240326.dist-info}/WHEEL +1 -1
- freestyle/chainingiterators/__init__.pyi +50 -52
- freestyle/functions/__init__.pyi +303 -207
- freestyle/predicates/__init__.pyi +299 -115
- freestyle/shaders/__init__.pyi +49 -80
- freestyle/types/__init__.pyi +465 -472
- freestyle/utils/ContextFunctions/__init__.pyi +9 -9
- freestyle/utils/__init__.pyi +28 -18
- gpu/capabilities/__init__.pyi +27 -19
- gpu/matrix/__init__.pyi +14 -16
- gpu/platform/__init__.pyi +5 -5
- gpu/shader/__init__.pyi +2 -5
- gpu/state/__init__.pyi +1 -1
- gpu/texture/__init__.pyi +3 -3
- gpu/types/__init__.pyi +54 -85
- gpu_extras/batch/__init__.pyi +27 -5
- gpu_extras/presets/__init__.pyi +52 -14
- graphviz_export/__init__.pyi +9 -2
- idprop/types/__init__.pyi +36 -12
- imbuf/__init__.pyi +8 -9
- imbuf/types/__init__.pyi +8 -15
- keyingsets_builtins/__init__.pyi +3149 -701
- keyingsets_utils/__init__.pyi +69 -14
- mathutils/__init__.pyi +502 -427
- mathutils/bvhtree/__init__.pyi +28 -32
- mathutils/geometry/__init__.pyi +177 -186
- mathutils/kdtree/__init__.pyi +16 -18
- mathutils/noise/__init__.pyi +47 -48
- nodeitems_builtins/__init__.pyi +50 -10
- nodeitems_utils/__init__.pyi +58 -10
- rna_info/__init__.pyi +230 -26
- rna_keymap_ui/__init__.pyi +29 -6
- rna_prop_ui/__init__.pyi +69 -12
- rna_xml/__init__.pyi +29 -6
- sys_info/__init__.pyi +4 -1
- bpy_extras/bmesh_utils/__init__.pyi +0 -6
- bpy_extras/extensions/__init__.pyi +0 -4
- bpy_extras/extensions/junction_module/__init__.pyi +0 -12
- bpy_extras/node_shader_utils/__init__.pyi +0 -131
- bpy_extras/wm_utils/__init__.pyi +0 -4
- bpy_extras/wm_utils/progress_report/__init__.pyi +0 -29
- fake_bpy_module-20240224.dist-info/RECORD +0 -349
- {fake_bpy_module-20240224.dist-info → fake_bpy_module-20240326.dist-info}/top_level.txt +0 -0
freestyle/types/__init__.pyi
CHANGED
|
@@ -17,10 +17,10 @@ False otherwise.
|
|
|
17
17
|
:type: bool
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
|
-
object:
|
|
20
|
+
object: ViewEdge
|
|
21
21
|
""" The ViewEdge object currently pointed to by this iterator.
|
|
22
22
|
|
|
23
|
-
:type:
|
|
23
|
+
:type: ViewEdge
|
|
24
24
|
"""
|
|
25
25
|
|
|
26
26
|
def __init__(self):
|
|
@@ -30,18 +30,18 @@ False otherwise.
|
|
|
30
30
|
"""
|
|
31
31
|
...
|
|
32
32
|
|
|
33
|
-
def __init__(self, brother:
|
|
33
|
+
def __init__(self, brother: AdjacencyIterator):
|
|
34
34
|
"""Builds an `AdjacencyIterator` using the default constructor,
|
|
35
35
|
copy constructor or the overloaded constructor.
|
|
36
36
|
|
|
37
37
|
:param brother: An AdjacencyIterator object.
|
|
38
|
-
:type brother:
|
|
38
|
+
:type brother: AdjacencyIterator
|
|
39
39
|
"""
|
|
40
40
|
...
|
|
41
41
|
|
|
42
42
|
def __init__(
|
|
43
43
|
self,
|
|
44
|
-
vertex:
|
|
44
|
+
vertex: ViewVertex,
|
|
45
45
|
restrict_to_selection: bool = True,
|
|
46
46
|
restrict_to_unvisited: bool = True,
|
|
47
47
|
):
|
|
@@ -49,7 +49,7 @@ False otherwise.
|
|
|
49
49
|
copy constructor or the overloaded constructor.
|
|
50
50
|
|
|
51
51
|
:param vertex: The vertex which is the next crossing.
|
|
52
|
-
:type vertex:
|
|
52
|
+
:type vertex: ViewVertex
|
|
53
53
|
:param restrict_to_selection: Indicates whether to force the chaining
|
|
54
54
|
to stay within the set of selected ViewEdges or not.
|
|
55
55
|
:type restrict_to_selection: bool
|
|
@@ -84,16 +84,16 @@ class BinaryPredicate0D:
|
|
|
84
84
|
"""Default constructor."""
|
|
85
85
|
...
|
|
86
86
|
|
|
87
|
-
def __call__(self, inter1:
|
|
87
|
+
def __call__(self, inter1: Interface0D, inter2: Interface0D) -> Interface0D:
|
|
88
88
|
"""Must be overload by inherited classes. It evaluates a relation
|
|
89
89
|
between two Interface0D objects.
|
|
90
90
|
|
|
91
91
|
:param inter1: The first Interface0D object.
|
|
92
|
-
:type inter1:
|
|
92
|
+
:type inter1: Interface0D
|
|
93
93
|
:param inter2: The second Interface0D object.
|
|
94
|
-
:type inter2:
|
|
95
|
-
:rtype: bool
|
|
94
|
+
:type inter2: Interface0D
|
|
96
95
|
:return: True or false.
|
|
96
|
+
:rtype: bool
|
|
97
97
|
"""
|
|
98
98
|
...
|
|
99
99
|
|
|
@@ -115,16 +115,16 @@ class BinaryPredicate1D:
|
|
|
115
115
|
"""Default constructor."""
|
|
116
116
|
...
|
|
117
117
|
|
|
118
|
-
def __call__(self, inter1:
|
|
118
|
+
def __call__(self, inter1: Interface1D, inter2: Interface1D) -> Interface1D:
|
|
119
119
|
"""Must be overload by inherited classes. It evaluates a relation
|
|
120
120
|
between two Interface1D objects.
|
|
121
121
|
|
|
122
122
|
:param inter1: The first Interface1D object.
|
|
123
|
-
:type inter1:
|
|
123
|
+
:type inter1: Interface1D
|
|
124
124
|
:param inter2: The second Interface1D object.
|
|
125
|
-
:type inter2:
|
|
126
|
-
:rtype: bool
|
|
125
|
+
:type inter2: Interface1D
|
|
127
126
|
:return: True or false.
|
|
127
|
+
:rtype: bool
|
|
128
128
|
"""
|
|
129
129
|
...
|
|
130
130
|
|
|
@@ -141,40 +141,40 @@ class Chain:
|
|
|
141
141
|
"""
|
|
142
142
|
...
|
|
143
143
|
|
|
144
|
-
def __init__(self, brother:
|
|
144
|
+
def __init__(self, brother: Chain):
|
|
145
145
|
"""Builds a `Chain` using the default constructor,
|
|
146
146
|
copy constructor or from an `Id`.
|
|
147
147
|
|
|
148
148
|
:param brother: A Chain object.
|
|
149
|
-
:type brother:
|
|
149
|
+
:type brother: Chain
|
|
150
150
|
"""
|
|
151
151
|
...
|
|
152
152
|
|
|
153
|
-
def __init__(self, id:
|
|
153
|
+
def __init__(self, id: Id):
|
|
154
154
|
"""Builds a `Chain` using the default constructor,
|
|
155
155
|
copy constructor or from an `Id`.
|
|
156
156
|
|
|
157
157
|
:param id: An Id object.
|
|
158
|
-
:type id:
|
|
158
|
+
:type id: Id
|
|
159
159
|
"""
|
|
160
160
|
...
|
|
161
161
|
|
|
162
|
-
def push_viewedge_back(self, viewedge:
|
|
162
|
+
def push_viewedge_back(self, viewedge: ViewEdge, orientation: bool):
|
|
163
163
|
"""Adds a ViewEdge at the end of the Chain.
|
|
164
164
|
|
|
165
165
|
:param viewedge: The ViewEdge that must be added.
|
|
166
|
-
:type viewedge:
|
|
166
|
+
:type viewedge: ViewEdge
|
|
167
167
|
:param orientation: The orientation with which the ViewEdge must be
|
|
168
168
|
processed.
|
|
169
169
|
:type orientation: bool
|
|
170
170
|
"""
|
|
171
171
|
...
|
|
172
172
|
|
|
173
|
-
def push_viewedge_front(self, viewedge:
|
|
173
|
+
def push_viewedge_front(self, viewedge: ViewEdge, orientation: bool):
|
|
174
174
|
"""Adds a ViewEdge at the beginning of the Chain.
|
|
175
175
|
|
|
176
176
|
:param viewedge: The ViewEdge that must be added.
|
|
177
|
-
:type viewedge:
|
|
177
|
+
:type viewedge: ViewEdge
|
|
178
178
|
:param orientation: The orientation with which the ViewEdge must be
|
|
179
179
|
processed.
|
|
180
180
|
:type orientation: bool
|
|
@@ -198,23 +198,23 @@ class ChainingIterator:
|
|
|
198
198
|
:type: bool
|
|
199
199
|
"""
|
|
200
200
|
|
|
201
|
-
next_vertex:
|
|
201
|
+
next_vertex: ViewVertex
|
|
202
202
|
""" The ViewVertex that is the next crossing.
|
|
203
203
|
|
|
204
|
-
:type:
|
|
204
|
+
:type: ViewVertex
|
|
205
205
|
"""
|
|
206
206
|
|
|
207
|
-
object:
|
|
207
|
+
object: ViewEdge
|
|
208
208
|
""" The ViewEdge object currently pointed by this iterator.
|
|
209
209
|
|
|
210
|
-
:type:
|
|
210
|
+
:type: ViewEdge
|
|
211
211
|
"""
|
|
212
212
|
|
|
213
213
|
def __init__(
|
|
214
214
|
self,
|
|
215
215
|
restrict_to_selection: bool = True,
|
|
216
216
|
restrict_to_unvisited: bool = True,
|
|
217
|
-
begin
|
|
217
|
+
begin=None,
|
|
218
218
|
orientation: bool = True,
|
|
219
219
|
):
|
|
220
220
|
"""Builds a Chaining Iterator from the first ViewEdge used for
|
|
@@ -227,19 +227,18 @@ class ChainingIterator:
|
|
|
227
227
|
already been chained must be ignored ot not.
|
|
228
228
|
:type restrict_to_unvisited: bool
|
|
229
229
|
:param begin: The ViewEdge from which to start the chain.
|
|
230
|
-
:type begin: typing.Optional['ViewEdge']
|
|
231
230
|
:param orientation: The direction to follow to explore the graph. If
|
|
232
231
|
true, the direction indicated by the first ViewEdge is used.
|
|
233
232
|
:type orientation: bool
|
|
234
233
|
"""
|
|
235
234
|
...
|
|
236
235
|
|
|
237
|
-
def __init__(self, brother:
|
|
236
|
+
def __init__(self, brother: ChainingIterator):
|
|
238
237
|
"""Builds a Chaining Iterator from the first ViewEdge used for
|
|
239
238
|
iteration and its orientation or by using the copy constructor.
|
|
240
239
|
|
|
241
240
|
:param brother:
|
|
242
|
-
:type brother:
|
|
241
|
+
:type brother: ChainingIterator
|
|
243
242
|
"""
|
|
244
243
|
...
|
|
245
244
|
|
|
@@ -251,7 +250,7 @@ class ChainingIterator:
|
|
|
251
250
|
"""
|
|
252
251
|
...
|
|
253
252
|
|
|
254
|
-
def traverse(self, it:
|
|
253
|
+
def traverse(self, it: AdjacencyIterator) -> AdjacencyIterator:
|
|
255
254
|
"""This method iterates over the potential next ViewEdges and returns
|
|
256
255
|
the one that will be followed next. Returns the next ViewEdge to
|
|
257
256
|
follow or None when the end of the chain is reached.
|
|
@@ -259,8 +258,7 @@ class ChainingIterator:
|
|
|
259
258
|
:param it: The iterator over the ViewEdges adjacent to the end vertex
|
|
260
259
|
of the current ViewEdge. The adjacency iterator reflects the
|
|
261
260
|
restriction rules by only iterating over the valid ViewEdges.
|
|
262
|
-
:type it:
|
|
263
|
-
:rtype: 'ViewEdge'
|
|
261
|
+
:type it: AdjacencyIterator
|
|
264
262
|
:return: Returns the next ViewEdge to follow, or None if chaining ends.
|
|
265
263
|
"""
|
|
266
264
|
...
|
|
@@ -290,37 +288,37 @@ class Curve:
|
|
|
290
288
|
"""
|
|
291
289
|
...
|
|
292
290
|
|
|
293
|
-
def __init__(self, brother:
|
|
291
|
+
def __init__(self, brother: Curve):
|
|
294
292
|
"""Builds a `FrsCurve` using a default constructor,
|
|
295
293
|
copy constructor or from an `Id`.
|
|
296
294
|
|
|
297
295
|
:param brother: A Curve object.
|
|
298
|
-
:type brother:
|
|
296
|
+
:type brother: Curve
|
|
299
297
|
"""
|
|
300
298
|
...
|
|
301
299
|
|
|
302
|
-
def __init__(self, id:
|
|
300
|
+
def __init__(self, id: Id):
|
|
303
301
|
"""Builds a `FrsCurve` using a default constructor,
|
|
304
302
|
copy constructor or from an `Id`.
|
|
305
303
|
|
|
306
304
|
:param id: An Id object.
|
|
307
|
-
:type id:
|
|
305
|
+
:type id: Id
|
|
308
306
|
"""
|
|
309
307
|
...
|
|
310
308
|
|
|
311
|
-
def push_vertex_back(self, vertex: typing.Union[
|
|
309
|
+
def push_vertex_back(self, vertex: typing.Union[SVertex, CurvePoint]):
|
|
312
310
|
"""Adds a single vertex at the end of the Curve.
|
|
313
311
|
|
|
314
312
|
:param vertex: A vertex object.
|
|
315
|
-
:type vertex: typing.Union[
|
|
313
|
+
:type vertex: typing.Union[SVertex, CurvePoint]
|
|
316
314
|
"""
|
|
317
315
|
...
|
|
318
316
|
|
|
319
|
-
def push_vertex_front(self, vertex: typing.Union[
|
|
317
|
+
def push_vertex_front(self, vertex: typing.Union[SVertex, CurvePoint]):
|
|
320
318
|
"""Adds a single vertex at the front of the Curve.
|
|
321
319
|
|
|
322
320
|
:param vertex: A vertex object.
|
|
323
|
-
:type vertex: typing.Union[
|
|
321
|
+
:type vertex: typing.Union[SVertex, CurvePoint]
|
|
324
322
|
"""
|
|
325
323
|
...
|
|
326
324
|
|
|
@@ -335,23 +333,23 @@ class CurvePoint:
|
|
|
335
333
|
given resolution.
|
|
336
334
|
"""
|
|
337
335
|
|
|
338
|
-
fedge:
|
|
336
|
+
fedge: FEdge
|
|
339
337
|
""" Gets the FEdge for the two SVertices that given CurvePoints consists out of.
|
|
340
338
|
A shortcut for CurvePoint.first_svertex.get_fedge(CurvePoint.second_svertex).
|
|
341
339
|
|
|
342
|
-
:type:
|
|
340
|
+
:type: FEdge
|
|
343
341
|
"""
|
|
344
342
|
|
|
345
|
-
first_svertex:
|
|
343
|
+
first_svertex: SVertex
|
|
346
344
|
""" The first SVertex upon which the CurvePoint is built.
|
|
347
345
|
|
|
348
|
-
:type:
|
|
346
|
+
:type: SVertex
|
|
349
347
|
"""
|
|
350
348
|
|
|
351
|
-
second_svertex:
|
|
349
|
+
second_svertex: SVertex
|
|
352
350
|
""" The second SVertex upon which the CurvePoint is built.
|
|
353
351
|
|
|
354
|
-
:type:
|
|
352
|
+
:type: SVertex
|
|
355
353
|
"""
|
|
356
354
|
|
|
357
355
|
t2d: float
|
|
@@ -369,45 +367,43 @@ A shortcut for CurvePoint.first_svertex.get_fedge(CurvePoint.second_svertex).
|
|
|
369
367
|
"""
|
|
370
368
|
...
|
|
371
369
|
|
|
372
|
-
def __init__(self, brother:
|
|
370
|
+
def __init__(self, brother: CurvePoint):
|
|
373
371
|
"""Builds a CurvePoint using the default constructor, copy constructor,
|
|
374
372
|
or one of the overloaded constructors. The over loaded constructors
|
|
375
373
|
can either take two `SVertex` or two `CurvePoint`
|
|
376
374
|
objects and an interpolation parameter
|
|
377
375
|
|
|
378
376
|
:param brother: A CurvePoint object.
|
|
379
|
-
:type brother:
|
|
377
|
+
:type brother: CurvePoint
|
|
380
378
|
"""
|
|
381
379
|
...
|
|
382
380
|
|
|
383
|
-
def __init__(self, first_vertex:
|
|
381
|
+
def __init__(self, first_vertex: SVertex, second_vertex: SVertex, t2d: float):
|
|
384
382
|
"""Builds a CurvePoint using the default constructor, copy constructor,
|
|
385
383
|
or one of the overloaded constructors. The over loaded constructors
|
|
386
384
|
can either take two `SVertex` or two `CurvePoint`
|
|
387
385
|
objects and an interpolation parameter
|
|
388
386
|
|
|
389
387
|
:param first_vertex: The first SVertex.
|
|
390
|
-
:type first_vertex:
|
|
388
|
+
:type first_vertex: SVertex
|
|
391
389
|
:param second_vertex: The second SVertex.
|
|
392
|
-
:type second_vertex:
|
|
390
|
+
:type second_vertex: SVertex
|
|
393
391
|
:param t2d: A 2D interpolation parameter used to linearly interpolate
|
|
394
392
|
first_vertex and second_vertex or first_point and second_point.
|
|
395
393
|
:type t2d: float
|
|
396
394
|
"""
|
|
397
395
|
...
|
|
398
396
|
|
|
399
|
-
def __init__(
|
|
400
|
-
self, first_point: "CurvePoint", second_point: "CurvePoint", t2d: float
|
|
401
|
-
):
|
|
397
|
+
def __init__(self, first_point: CurvePoint, second_point: CurvePoint, t2d: float):
|
|
402
398
|
"""Builds a CurvePoint using the default constructor, copy constructor,
|
|
403
399
|
or one of the overloaded constructors. The over loaded constructors
|
|
404
400
|
can either take two `SVertex` or two `CurvePoint`
|
|
405
401
|
objects and an interpolation parameter
|
|
406
402
|
|
|
407
403
|
:param first_point: The first CurvePoint.
|
|
408
|
-
:type first_point:
|
|
404
|
+
:type first_point: CurvePoint
|
|
409
405
|
:param second_point: The second CurvePoint.
|
|
410
|
-
:type second_point:
|
|
406
|
+
:type second_point: CurvePoint
|
|
411
407
|
:param t2d: A 2D interpolation parameter used to linearly interpolate
|
|
412
408
|
first_vertex and second_vertex or first_point and second_point.
|
|
413
409
|
:type t2d: float
|
|
@@ -420,10 +416,10 @@ class CurvePointIterator:
|
|
|
420
416
|
through the .object attribute.
|
|
421
417
|
"""
|
|
422
418
|
|
|
423
|
-
object:
|
|
419
|
+
object: CurvePoint
|
|
424
420
|
""" The CurvePoint object currently pointed by this iterator.
|
|
425
421
|
|
|
426
|
-
:type:
|
|
422
|
+
:type: CurvePoint
|
|
427
423
|
"""
|
|
428
424
|
|
|
429
425
|
t: float
|
|
@@ -445,12 +441,12 @@ class CurvePointIterator:
|
|
|
445
441
|
"""
|
|
446
442
|
...
|
|
447
443
|
|
|
448
|
-
def __init__(self, brother:
|
|
444
|
+
def __init__(self, brother: CurvePointIterator):
|
|
449
445
|
"""Builds a CurvePointIterator object using either the default constructor,
|
|
450
446
|
copy constructor, or the overloaded constructor.
|
|
451
447
|
|
|
452
448
|
:param brother: A CurvePointIterator object.
|
|
453
|
-
:type brother:
|
|
449
|
+
:type brother: CurvePointIterator
|
|
454
450
|
"""
|
|
455
451
|
...
|
|
456
452
|
|
|
@@ -477,16 +473,16 @@ class FEdge:
|
|
|
477
473
|
from one to the other.
|
|
478
474
|
"""
|
|
479
475
|
|
|
480
|
-
first_svertex:
|
|
476
|
+
first_svertex: SVertex
|
|
481
477
|
""" The first SVertex constituting this FEdge.
|
|
482
478
|
|
|
483
|
-
:type:
|
|
479
|
+
:type: SVertex
|
|
484
480
|
"""
|
|
485
481
|
|
|
486
|
-
id:
|
|
482
|
+
id: Id
|
|
487
483
|
""" The Id of this FEdge.
|
|
488
484
|
|
|
489
|
-
:type:
|
|
485
|
+
:type: Id
|
|
490
486
|
"""
|
|
491
487
|
|
|
492
488
|
is_smooth: bool
|
|
@@ -495,36 +491,36 @@ class FEdge:
|
|
|
495
491
|
:type: bool
|
|
496
492
|
"""
|
|
497
493
|
|
|
498
|
-
nature:
|
|
494
|
+
nature: Nature
|
|
499
495
|
""" The nature of this FEdge.
|
|
500
496
|
|
|
501
|
-
:type:
|
|
497
|
+
:type: Nature
|
|
502
498
|
"""
|
|
503
499
|
|
|
504
|
-
next_fedge:
|
|
500
|
+
next_fedge: FEdge
|
|
505
501
|
""" The FEdge following this one in the ViewEdge. The value is None if
|
|
506
502
|
this FEdge is the last of the ViewEdge.
|
|
507
503
|
|
|
508
|
-
:type:
|
|
504
|
+
:type: FEdge
|
|
509
505
|
"""
|
|
510
506
|
|
|
511
|
-
previous_fedge:
|
|
507
|
+
previous_fedge: FEdge
|
|
512
508
|
""" The FEdge preceding this one in the ViewEdge. The value is None if
|
|
513
509
|
this FEdge is the first one of the ViewEdge.
|
|
514
510
|
|
|
515
|
-
:type:
|
|
511
|
+
:type: FEdge
|
|
516
512
|
"""
|
|
517
513
|
|
|
518
|
-
second_svertex:
|
|
514
|
+
second_svertex: SVertex
|
|
519
515
|
""" The second SVertex constituting this FEdge.
|
|
520
516
|
|
|
521
|
-
:type:
|
|
517
|
+
:type: SVertex
|
|
522
518
|
"""
|
|
523
519
|
|
|
524
|
-
viewedge:
|
|
520
|
+
viewedge: ViewEdge
|
|
525
521
|
""" The ViewEdge to which this FEdge belongs to.
|
|
526
522
|
|
|
527
|
-
:type:
|
|
523
|
+
:type: ViewEdge
|
|
528
524
|
"""
|
|
529
525
|
|
|
530
526
|
def FEdge(self):
|
|
@@ -534,12 +530,12 @@ this FEdge is the first one of the ViewEdge.
|
|
|
534
530
|
"""
|
|
535
531
|
...
|
|
536
532
|
|
|
537
|
-
def FEdge(self, brother:
|
|
533
|
+
def FEdge(self, brother: FEdge):
|
|
538
534
|
"""Builds an `FEdge` using the default constructor,
|
|
539
535
|
copy constructor, or between two `SVertex` objects.
|
|
540
536
|
|
|
541
537
|
:param brother: An FEdge object.
|
|
542
|
-
:type brother:
|
|
538
|
+
:type brother: FEdge
|
|
543
539
|
"""
|
|
544
540
|
...
|
|
545
541
|
|
|
@@ -580,30 +576,30 @@ no material.
|
|
|
580
576
|
:type: int
|
|
581
577
|
"""
|
|
582
578
|
|
|
583
|
-
material_left:
|
|
579
|
+
material_left: Material
|
|
584
580
|
""" The material of the face lying on the left of the FEdge.
|
|
585
581
|
|
|
586
|
-
:type:
|
|
582
|
+
:type: Material
|
|
587
583
|
"""
|
|
588
584
|
|
|
589
|
-
material_right:
|
|
585
|
+
material_right: Material
|
|
590
586
|
""" The material of the face lying on the right of the FEdge. If this FEdge
|
|
591
587
|
is a border, it has no Face on its right and therefore no material.
|
|
592
588
|
|
|
593
|
-
:type:
|
|
589
|
+
:type: Material
|
|
594
590
|
"""
|
|
595
591
|
|
|
596
|
-
normal_left: typing.Union[
|
|
592
|
+
normal_left: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
597
593
|
""" The normal to the face lying on the left of the FEdge.
|
|
598
594
|
|
|
599
|
-
:type: typing.Union[
|
|
595
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
600
596
|
"""
|
|
601
597
|
|
|
602
|
-
normal_right: typing.Union[
|
|
598
|
+
normal_right: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
603
599
|
""" The normal to the face lying on the right of the FEdge. If this FEdge
|
|
604
600
|
is a border, it has no Face on its right and therefore no normal.
|
|
605
601
|
|
|
606
|
-
:type: typing.Union[
|
|
602
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
607
603
|
"""
|
|
608
604
|
|
|
609
605
|
def __init__(self):
|
|
@@ -613,23 +609,23 @@ is a border, it has no Face on its right and therefore no normal.
|
|
|
613
609
|
"""
|
|
614
610
|
...
|
|
615
611
|
|
|
616
|
-
def __init__(self, brother:
|
|
612
|
+
def __init__(self, brother: FEdgeSharp):
|
|
617
613
|
"""Builds an `FEdgeSharp` using the default constructor,
|
|
618
614
|
copy constructor, or between two `SVertex` objects.
|
|
619
615
|
|
|
620
616
|
:param brother: An FEdgeSharp object.
|
|
621
|
-
:type brother:
|
|
617
|
+
:type brother: FEdgeSharp
|
|
622
618
|
"""
|
|
623
619
|
...
|
|
624
620
|
|
|
625
|
-
def __init__(self, first_vertex:
|
|
621
|
+
def __init__(self, first_vertex: SVertex, second_vertex: SVertex):
|
|
626
622
|
"""Builds an `FEdgeSharp` using the default constructor,
|
|
627
623
|
copy constructor, or between two `SVertex` objects.
|
|
628
624
|
|
|
629
625
|
:param first_vertex: The first SVertex object.
|
|
630
|
-
:type first_vertex:
|
|
626
|
+
:type first_vertex: SVertex
|
|
631
627
|
:param second_vertex: The second SVertex object.
|
|
632
|
-
:type second_vertex:
|
|
628
|
+
:type second_vertex: SVertex
|
|
633
629
|
"""
|
|
634
630
|
...
|
|
635
631
|
|
|
@@ -645,10 +641,10 @@ class FEdgeSmooth:
|
|
|
645
641
|
:type: bool
|
|
646
642
|
"""
|
|
647
643
|
|
|
648
|
-
material:
|
|
644
|
+
material: Material
|
|
649
645
|
""" The material of the face that this FEdge is running across.
|
|
650
646
|
|
|
651
|
-
:type:
|
|
647
|
+
:type: Material
|
|
652
648
|
"""
|
|
653
649
|
|
|
654
650
|
material_index: int
|
|
@@ -657,10 +653,10 @@ class FEdgeSmooth:
|
|
|
657
653
|
:type: int
|
|
658
654
|
"""
|
|
659
655
|
|
|
660
|
-
normal: typing.Union[
|
|
656
|
+
normal: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
661
657
|
""" The normal of the face that this FEdge is running across.
|
|
662
658
|
|
|
663
|
-
:type: typing.Union[
|
|
659
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
664
660
|
"""
|
|
665
661
|
|
|
666
662
|
def __init__(self):
|
|
@@ -670,23 +666,23 @@ class FEdgeSmooth:
|
|
|
670
666
|
"""
|
|
671
667
|
...
|
|
672
668
|
|
|
673
|
-
def __init__(self, brother:
|
|
669
|
+
def __init__(self, brother: FEdgeSmooth):
|
|
674
670
|
"""Builds an `FEdgeSmooth` using the default constructor,
|
|
675
671
|
copy constructor, or between two `SVertex`.
|
|
676
672
|
|
|
677
673
|
:param brother: An FEdgeSmooth object.
|
|
678
|
-
:type brother:
|
|
674
|
+
:type brother: FEdgeSmooth
|
|
679
675
|
"""
|
|
680
676
|
...
|
|
681
677
|
|
|
682
|
-
def __init__(self, first_vertex:
|
|
678
|
+
def __init__(self, first_vertex: SVertex, second_vertex: SVertex):
|
|
683
679
|
"""Builds an `FEdgeSmooth` using the default constructor,
|
|
684
680
|
copy constructor, or between two `SVertex`.
|
|
685
681
|
|
|
686
682
|
:param first_vertex: The first SVertex object.
|
|
687
|
-
:type first_vertex:
|
|
683
|
+
:type first_vertex: SVertex
|
|
688
684
|
:param second_vertex: The second SVertex object.
|
|
689
|
-
:type second_vertex:
|
|
685
|
+
:type second_vertex: SVertex
|
|
690
686
|
"""
|
|
691
687
|
...
|
|
692
688
|
|
|
@@ -705,11 +701,10 @@ class Id:
|
|
|
705
701
|
:type: int
|
|
706
702
|
"""
|
|
707
703
|
|
|
708
|
-
def __init__(self, brother
|
|
704
|
+
def __init__(self, brother):
|
|
709
705
|
"""Build the Id from two numbers or another `Id` using the copy constructor.
|
|
710
706
|
|
|
711
707
|
:param brother: An Id object.
|
|
712
|
-
:type brother: 'Id'
|
|
713
708
|
"""
|
|
714
709
|
...
|
|
715
710
|
|
|
@@ -734,10 +729,10 @@ class IntegrationType:
|
|
|
734
729
|
class Interface0D:
|
|
735
730
|
"""Base class for any 0D element."""
|
|
736
731
|
|
|
737
|
-
id:
|
|
732
|
+
id: Id
|
|
738
733
|
""" The Id of this 0D element.
|
|
739
734
|
|
|
740
|
-
:type:
|
|
735
|
+
:type: Id
|
|
741
736
|
"""
|
|
742
737
|
|
|
743
738
|
name: str
|
|
@@ -746,22 +741,22 @@ class Interface0D:
|
|
|
746
741
|
:type: str
|
|
747
742
|
"""
|
|
748
743
|
|
|
749
|
-
nature:
|
|
744
|
+
nature: Nature
|
|
750
745
|
""" The nature of this 0D element.
|
|
751
746
|
|
|
752
|
-
:type:
|
|
747
|
+
:type: Nature
|
|
753
748
|
"""
|
|
754
749
|
|
|
755
|
-
point_2d: typing.Union[
|
|
750
|
+
point_2d: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
756
751
|
""" The 2D point of this 0D element.
|
|
757
752
|
|
|
758
|
-
:type: typing.Union[
|
|
753
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
759
754
|
"""
|
|
760
755
|
|
|
761
|
-
point_3d: typing.Union[
|
|
756
|
+
point_3d: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
762
757
|
""" The 3D point of this 0D element.
|
|
763
758
|
|
|
764
|
-
:type: typing.Union[
|
|
759
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
765
760
|
"""
|
|
766
761
|
|
|
767
762
|
projected_x: float
|
|
@@ -786,14 +781,14 @@ class Interface0D:
|
|
|
786
781
|
"""Default constructor."""
|
|
787
782
|
...
|
|
788
783
|
|
|
789
|
-
def get_fedge(self, inter:
|
|
784
|
+
def get_fedge(self, inter: Interface0D) -> Interface0D:
|
|
790
785
|
"""Returns the FEdge that lies between this 0D element and the 0D
|
|
791
786
|
element given as the argument.
|
|
792
787
|
|
|
793
788
|
:param inter: A 0D element.
|
|
794
|
-
:type inter:
|
|
795
|
-
:rtype: 'FEdge'
|
|
789
|
+
:type inter: Interface0D
|
|
796
790
|
:return: The FEdge lying between the two 0D elements.
|
|
791
|
+
:rtype: FEdge
|
|
797
792
|
"""
|
|
798
793
|
...
|
|
799
794
|
|
|
@@ -809,13 +804,13 @@ For its counterpart (pointing to the first valid element), use it.is_begin.
|
|
|
809
804
|
:type: bool
|
|
810
805
|
"""
|
|
811
806
|
|
|
812
|
-
object:
|
|
807
|
+
object: Interface0D
|
|
813
808
|
""" The 0D object currently pointed to by this iterator. Note that the object
|
|
814
809
|
may be an instance of an Interface0D subclass. For example if the iterator
|
|
815
810
|
has been created from the vertices_begin() method of the `Stroke`
|
|
816
811
|
class, the .object property refers to a `StrokeVertex` object.
|
|
817
812
|
|
|
818
|
-
:type:
|
|
813
|
+
:type: Interface0D
|
|
819
814
|
"""
|
|
820
815
|
|
|
821
816
|
t: float
|
|
@@ -830,31 +825,31 @@ class, the .object property refers to a `StrokeVertex` object.
|
|
|
830
825
|
:type: float
|
|
831
826
|
"""
|
|
832
827
|
|
|
833
|
-
def __init__(self, brother:
|
|
828
|
+
def __init__(self, brother: Interface0DIterator):
|
|
834
829
|
"""Construct a nested Interface0DIterator using either the copy constructor
|
|
835
830
|
or the constructor that takes an he argument of a Function0D.
|
|
836
831
|
|
|
837
832
|
:param brother: An Interface0DIterator object.
|
|
838
|
-
:type brother:
|
|
833
|
+
:type brother: Interface0DIterator
|
|
839
834
|
"""
|
|
840
835
|
...
|
|
841
836
|
|
|
842
|
-
def __init__(self, it: typing.Union[
|
|
837
|
+
def __init__(self, it: typing.Union[SVertexIterator, CurvePointIterator]):
|
|
843
838
|
"""Construct a nested Interface0DIterator using either the copy constructor
|
|
844
839
|
or the constructor that takes an he argument of a Function0D.
|
|
845
840
|
|
|
846
841
|
:param it: An iterator object to be nested.
|
|
847
|
-
:type it: typing.Union[
|
|
842
|
+
:type it: typing.Union[SVertexIterator, CurvePointIterator]
|
|
848
843
|
"""
|
|
849
844
|
...
|
|
850
845
|
|
|
851
846
|
class Interface1D:
|
|
852
847
|
"""Base class for any 1D element."""
|
|
853
848
|
|
|
854
|
-
id:
|
|
849
|
+
id: Id
|
|
855
850
|
""" The Id of this Interface1D.
|
|
856
851
|
|
|
857
|
-
:type:
|
|
852
|
+
:type: Id
|
|
858
853
|
"""
|
|
859
854
|
|
|
860
855
|
length_2d: float
|
|
@@ -869,10 +864,10 @@ class Interface1D:
|
|
|
869
864
|
:type: str
|
|
870
865
|
"""
|
|
871
866
|
|
|
872
|
-
nature:
|
|
867
|
+
nature: Nature
|
|
873
868
|
""" The nature of this Interface1D.
|
|
874
869
|
|
|
875
|
-
:type:
|
|
870
|
+
:type: Nature
|
|
876
871
|
"""
|
|
877
872
|
|
|
878
873
|
time_stamp: int
|
|
@@ -885,7 +880,7 @@ class Interface1D:
|
|
|
885
880
|
"""Default constructor."""
|
|
886
881
|
...
|
|
887
882
|
|
|
888
|
-
def points_begin(self, t: float = 0.0) ->
|
|
883
|
+
def points_begin(self, t: float = 0.0) -> float:
|
|
889
884
|
"""Returns an iterator over the Interface1D points, pointing to the
|
|
890
885
|
first point. The difference with vertices_begin() is that here we can
|
|
891
886
|
iterate over points of the 1D element at a any given sampling.
|
|
@@ -894,12 +889,12 @@ class Interface1D:
|
|
|
894
889
|
:param t: A sampling with which we want to iterate over points of
|
|
895
890
|
this 1D element.
|
|
896
891
|
:type t: float
|
|
897
|
-
:rtype: 'Interface0DIterator'
|
|
898
892
|
:return: An Interface0DIterator pointing to the first point.
|
|
893
|
+
:rtype: Interface0DIterator
|
|
899
894
|
"""
|
|
900
895
|
...
|
|
901
896
|
|
|
902
|
-
def points_end(self, t: float = 0.0) ->
|
|
897
|
+
def points_end(self, t: float = 0.0) -> float:
|
|
903
898
|
"""Returns an iterator over the Interface1D points, pointing after the
|
|
904
899
|
last point. The difference with vertices_end() is that here we can
|
|
905
900
|
iterate over points of the 1D element at a given sampling. Indeed,
|
|
@@ -908,26 +903,26 @@ class Interface1D:
|
|
|
908
903
|
:param t: A sampling with which we want to iterate over points of
|
|
909
904
|
this 1D element.
|
|
910
905
|
:type t: float
|
|
911
|
-
:rtype: 'Interface0DIterator'
|
|
912
906
|
:return: An Interface0DIterator pointing after the last point.
|
|
907
|
+
:rtype: Interface0DIterator
|
|
913
908
|
"""
|
|
914
909
|
...
|
|
915
910
|
|
|
916
|
-
def vertices_begin(self) ->
|
|
911
|
+
def vertices_begin(self) -> Interface0DIterator:
|
|
917
912
|
"""Returns an iterator over the Interface1D vertices, pointing to the
|
|
918
913
|
first vertex.
|
|
919
914
|
|
|
920
|
-
:rtype: 'Interface0DIterator'
|
|
921
915
|
:return: An Interface0DIterator pointing to the first vertex.
|
|
916
|
+
:rtype: Interface0DIterator
|
|
922
917
|
"""
|
|
923
918
|
...
|
|
924
919
|
|
|
925
|
-
def vertices_end(self) ->
|
|
920
|
+
def vertices_end(self) -> Interface0DIterator:
|
|
926
921
|
"""Returns an iterator over the Interface1D vertices, pointing after
|
|
927
922
|
the last vertex.
|
|
928
923
|
|
|
929
|
-
:rtype: 'Interface0DIterator'
|
|
930
924
|
:return: An Interface0DIterator pointing after the last vertex.
|
|
925
|
+
:rtype: Interface0DIterator
|
|
931
926
|
"""
|
|
932
927
|
...
|
|
933
928
|
|
|
@@ -967,28 +962,28 @@ class Iterator:
|
|
|
967
962
|
class Material:
|
|
968
963
|
"""Class defining a material."""
|
|
969
964
|
|
|
970
|
-
ambient: typing.Union[
|
|
965
|
+
ambient: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
971
966
|
""" RGBA components of the ambient color of the material.
|
|
972
967
|
|
|
973
|
-
:type: typing.Union[
|
|
968
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
974
969
|
"""
|
|
975
970
|
|
|
976
|
-
diffuse: typing.Union[
|
|
971
|
+
diffuse: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
977
972
|
""" RGBA components of the diffuse color of the material.
|
|
978
973
|
|
|
979
|
-
:type: typing.Union[
|
|
974
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
980
975
|
"""
|
|
981
976
|
|
|
982
|
-
emission: typing.Union[
|
|
977
|
+
emission: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
983
978
|
""" RGBA components of the emissive color of the material.
|
|
984
979
|
|
|
985
|
-
:type: typing.Union[
|
|
980
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
986
981
|
"""
|
|
987
982
|
|
|
988
|
-
line: typing.Union[
|
|
983
|
+
line: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
989
984
|
""" RGBA components of the line color of the material.
|
|
990
985
|
|
|
991
|
-
:type: typing.Union[
|
|
986
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
992
987
|
"""
|
|
993
988
|
|
|
994
989
|
priority: int
|
|
@@ -1003,10 +998,10 @@ class Material:
|
|
|
1003
998
|
:type: float
|
|
1004
999
|
"""
|
|
1005
1000
|
|
|
1006
|
-
specular: typing.Union[
|
|
1001
|
+
specular: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1007
1002
|
""" RGBA components of the specular color of the material.
|
|
1008
1003
|
|
|
1009
|
-
:type: typing.Union[
|
|
1004
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1010
1005
|
"""
|
|
1011
1006
|
|
|
1012
1007
|
def __init__(self):
|
|
@@ -1016,22 +1011,22 @@ class Material:
|
|
|
1016
1011
|
"""
|
|
1017
1012
|
...
|
|
1018
1013
|
|
|
1019
|
-
def __init__(self, brother:
|
|
1014
|
+
def __init__(self, brother: Material):
|
|
1020
1015
|
"""Creates a `FrsMaterial` using either default constructor,
|
|
1021
1016
|
copy constructor, or an overloaded constructor
|
|
1022
1017
|
|
|
1023
1018
|
:param brother: A Material object to be used as a copy constructor.
|
|
1024
|
-
:type brother:
|
|
1019
|
+
:type brother: Material
|
|
1025
1020
|
"""
|
|
1026
1021
|
...
|
|
1027
1022
|
|
|
1028
1023
|
def __init__(
|
|
1029
1024
|
self,
|
|
1030
|
-
line: typing.Union[
|
|
1031
|
-
diffuse: typing.Union[
|
|
1032
|
-
ambient: typing.Union[
|
|
1033
|
-
specular: typing.Union[
|
|
1034
|
-
emission: typing.Union[
|
|
1025
|
+
line: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1026
|
+
diffuse: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1027
|
+
ambient: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1028
|
+
specular: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1029
|
+
emission: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1035
1030
|
shininess: float,
|
|
1036
1031
|
priority: int,
|
|
1037
1032
|
):
|
|
@@ -1039,15 +1034,15 @@ class Material:
|
|
|
1039
1034
|
copy constructor, or an overloaded constructor
|
|
1040
1035
|
|
|
1041
1036
|
:param line: The line color.
|
|
1042
|
-
:type line: typing.Union[
|
|
1037
|
+
:type line: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1043
1038
|
:param diffuse: The diffuse color.
|
|
1044
|
-
:type diffuse: typing.Union[
|
|
1039
|
+
:type diffuse: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1045
1040
|
:param ambient: The ambient color.
|
|
1046
|
-
:type ambient: typing.Union[
|
|
1041
|
+
:type ambient: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1047
1042
|
:param specular: The specular color.
|
|
1048
|
-
:type specular: typing.Union[
|
|
1043
|
+
:type specular: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1049
1044
|
:param emission: The emissive color.
|
|
1050
|
-
:type emission: typing.Union[
|
|
1045
|
+
:type emission: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1051
1046
|
:param shininess: The shininess coefficient.
|
|
1052
1047
|
:type shininess: float
|
|
1053
1048
|
:param priority: The line color priority.
|
|
@@ -1085,36 +1080,36 @@ class Noise:
|
|
|
1085
1080
|
|
|
1086
1081
|
:param v: One-dimensional sample point.
|
|
1087
1082
|
:type v: float
|
|
1088
|
-
:rtype: float
|
|
1089
1083
|
:return: A smooth noise value.
|
|
1084
|
+
:rtype: float
|
|
1090
1085
|
"""
|
|
1091
1086
|
...
|
|
1092
1087
|
|
|
1093
1088
|
def smoothNoise2(
|
|
1094
|
-
self, v: typing.Union[
|
|
1095
|
-
) -> float:
|
|
1089
|
+
self, v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1090
|
+
) -> typing.Union[typing.Sequence[float], mathutils.Vector, list]:
|
|
1096
1091
|
"""Returns a smooth noise value for a 2D element.
|
|
1097
1092
|
|
|
1098
1093
|
:param v: Two-dimensional sample point.
|
|
1099
|
-
:type v: typing.Union[
|
|
1100
|
-
:rtype: float
|
|
1094
|
+
:type v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1101
1095
|
:return: A smooth noise value.
|
|
1096
|
+
:rtype: float
|
|
1102
1097
|
"""
|
|
1103
1098
|
...
|
|
1104
1099
|
|
|
1105
1100
|
def smoothNoise3(
|
|
1106
|
-
self, v: typing.Union[
|
|
1107
|
-
) -> float:
|
|
1101
|
+
self, v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1102
|
+
) -> typing.Union[typing.Sequence[float], mathutils.Vector, list]:
|
|
1108
1103
|
"""Returns a smooth noise value for a 3D element.
|
|
1109
1104
|
|
|
1110
1105
|
:param v: Three-dimensional sample point.
|
|
1111
|
-
:type v: typing.Union[
|
|
1112
|
-
:rtype: float
|
|
1106
|
+
:type v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1113
1107
|
:return: A smooth noise value.
|
|
1108
|
+
:rtype: float
|
|
1114
1109
|
"""
|
|
1115
1110
|
...
|
|
1116
1111
|
|
|
1117
|
-
def turbulence1(self, v: float, freq: float, amp: float, oct: int = 4) ->
|
|
1112
|
+
def turbulence1(self, v: float, freq: float, amp: float, oct: int = 4) -> int:
|
|
1118
1113
|
"""Returns a noise value for a 1D element.
|
|
1119
1114
|
|
|
1120
1115
|
:param v: One-dimensional sample point.
|
|
@@ -1125,52 +1120,52 @@ class Noise:
|
|
|
1125
1120
|
:type amp: float
|
|
1126
1121
|
:param oct: Number of octaves.
|
|
1127
1122
|
:type oct: int
|
|
1128
|
-
:rtype: float
|
|
1129
1123
|
:return: A noise value.
|
|
1124
|
+
:rtype: float
|
|
1130
1125
|
"""
|
|
1131
1126
|
...
|
|
1132
1127
|
|
|
1133
1128
|
def turbulence2(
|
|
1134
1129
|
self,
|
|
1135
|
-
v: typing.Union[
|
|
1130
|
+
v: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1136
1131
|
freq: float,
|
|
1137
1132
|
amp: float,
|
|
1138
1133
|
oct: int = 4,
|
|
1139
|
-
) ->
|
|
1134
|
+
) -> int:
|
|
1140
1135
|
"""Returns a noise value for a 2D element.
|
|
1141
1136
|
|
|
1142
1137
|
:param v: Two-dimensional sample point.
|
|
1143
|
-
:type v: typing.Union[
|
|
1138
|
+
:type v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1144
1139
|
:param freq: Noise frequency.
|
|
1145
1140
|
:type freq: float
|
|
1146
1141
|
:param amp: Amplitude.
|
|
1147
1142
|
:type amp: float
|
|
1148
1143
|
:param oct: Number of octaves.
|
|
1149
1144
|
:type oct: int
|
|
1150
|
-
:rtype: float
|
|
1151
1145
|
:return: A noise value.
|
|
1146
|
+
:rtype: float
|
|
1152
1147
|
"""
|
|
1153
1148
|
...
|
|
1154
1149
|
|
|
1155
1150
|
def turbulence3(
|
|
1156
1151
|
self,
|
|
1157
|
-
v: typing.Union[
|
|
1152
|
+
v: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
1158
1153
|
freq: float,
|
|
1159
1154
|
amp: float,
|
|
1160
1155
|
oct: int = 4,
|
|
1161
|
-
) ->
|
|
1156
|
+
) -> int:
|
|
1162
1157
|
"""Returns a noise value for a 3D element.
|
|
1163
1158
|
|
|
1164
1159
|
:param v: Three-dimensional sample point.
|
|
1165
|
-
:type v: typing.Union[
|
|
1160
|
+
:type v: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1166
1161
|
:param freq: Noise frequency.
|
|
1167
1162
|
:type freq: float
|
|
1168
1163
|
:param amp: Amplitude.
|
|
1169
1164
|
:type amp: float
|
|
1170
1165
|
:param oct: Number of octaves.
|
|
1171
1166
|
:type oct: int
|
|
1172
|
-
:rtype: float
|
|
1173
1167
|
:return: A noise value.
|
|
1168
|
+
:rtype: float
|
|
1174
1169
|
"""
|
|
1175
1170
|
...
|
|
1176
1171
|
|
|
@@ -1179,21 +1174,21 @@ class NonTVertex:
|
|
|
1179
1174
|
Can be associated to 2 or more view edges.
|
|
1180
1175
|
"""
|
|
1181
1176
|
|
|
1182
|
-
svertex:
|
|
1177
|
+
svertex: SVertex
|
|
1183
1178
|
""" The SVertex on top of which this NonTVertex is built.
|
|
1184
1179
|
|
|
1185
|
-
:type:
|
|
1180
|
+
:type: SVertex
|
|
1186
1181
|
"""
|
|
1187
1182
|
|
|
1188
1183
|
def __init__(self):
|
|
1189
1184
|
"""Builds a `NonTVertex` using the default constructor or a `SVertex`."""
|
|
1190
1185
|
...
|
|
1191
1186
|
|
|
1192
|
-
def __init__(self, svertex:
|
|
1187
|
+
def __init__(self, svertex: SVertex):
|
|
1193
1188
|
"""Builds a `NonTVertex` using the default constructor or a `SVertex`.
|
|
1194
1189
|
|
|
1195
1190
|
:param svertex: An SVertex object.
|
|
1196
|
-
:type svertex:
|
|
1191
|
+
:type svertex: SVertex
|
|
1197
1192
|
"""
|
|
1198
1193
|
...
|
|
1199
1194
|
|
|
@@ -1204,7 +1199,8 @@ class Operators:
|
|
|
1204
1199
|
predicates and shaders that are taken as arguments.
|
|
1205
1200
|
"""
|
|
1206
1201
|
|
|
1207
|
-
|
|
1202
|
+
@staticmethod
|
|
1203
|
+
def bidirectional_chain(it: ChainingIterator, pred: UnaryPredicate1D):
|
|
1208
1204
|
"""Builds a set of chains from the current set of ViewEdges. Each
|
|
1209
1205
|
ViewEdge of the current list potentially starts a new chain. The
|
|
1210
1206
|
chaining operator then iterates over the ViewEdges of the ViewMap
|
|
@@ -1219,15 +1215,16 @@ class Operators:
|
|
|
1219
1215
|
|
|
1220
1216
|
:param it: The ChainingIterator on the ViewEdges of the ViewMap. It
|
|
1221
1217
|
contains the chaining rule.
|
|
1222
|
-
:type it:
|
|
1218
|
+
:type it: ChainingIterator
|
|
1223
1219
|
:param pred: The predicate on the ViewEdge that expresses the stopping condition.
|
|
1224
1220
|
This parameter is optional, you make not want to pass a stopping criterion
|
|
1225
1221
|
when the stopping criterion is already contained in the iterator definition.
|
|
1226
|
-
:type pred:
|
|
1222
|
+
:type pred: UnaryPredicate1D
|
|
1227
1223
|
"""
|
|
1228
1224
|
...
|
|
1229
1225
|
|
|
1230
|
-
|
|
1226
|
+
@staticmethod
|
|
1227
|
+
def bidirectional_chain(it: ChainingIterator):
|
|
1231
1228
|
"""Builds a set of chains from the current set of ViewEdges. Each
|
|
1232
1229
|
ViewEdge of the current list potentially starts a new chain. The
|
|
1233
1230
|
chaining operator then iterates over the ViewEdges of the ViewMap
|
|
@@ -1242,15 +1239,13 @@ class Operators:
|
|
|
1242
1239
|
|
|
1243
1240
|
:param it: The ChainingIterator on the ViewEdges of the ViewMap. It
|
|
1244
1241
|
contains the chaining rule.
|
|
1245
|
-
:type it:
|
|
1242
|
+
:type it: ChainingIterator
|
|
1246
1243
|
"""
|
|
1247
1244
|
...
|
|
1248
1245
|
|
|
1246
|
+
@staticmethod
|
|
1249
1247
|
def chain(
|
|
1250
|
-
|
|
1251
|
-
it: "ViewEdgeIterator",
|
|
1252
|
-
pred: "UnaryPredicate1D",
|
|
1253
|
-
modifier: "UnaryFunction1DVoid",
|
|
1248
|
+
it: ViewEdgeIterator, pred: UnaryPredicate1D, modifier: UnaryFunction1DVoid
|
|
1254
1249
|
):
|
|
1255
1250
|
"""Builds a set of chains from the current set of ViewEdges. Each
|
|
1256
1251
|
ViewEdge of the current list starts a new chain. The chaining
|
|
@@ -1260,19 +1255,20 @@ class Operators:
|
|
|
1260
1255
|
|
|
1261
1256
|
:param it: The iterator on the ViewEdges of the ViewMap. It contains
|
|
1262
1257
|
the chaining rule.
|
|
1263
|
-
:type it:
|
|
1258
|
+
:type it: ViewEdgeIterator
|
|
1264
1259
|
:param pred: The predicate on the ViewEdge that expresses the
|
|
1265
1260
|
stopping condition.
|
|
1266
|
-
:type pred:
|
|
1261
|
+
:type pred: UnaryPredicate1D
|
|
1267
1262
|
:param modifier: A function that takes a ViewEdge as argument and
|
|
1268
1263
|
that is used to modify the processed ViewEdge state (the
|
|
1269
1264
|
timestamp incrementation is a typical illustration of such a modifier).
|
|
1270
1265
|
If this argument is not given, the time stamp is automatically managed.
|
|
1271
|
-
:type modifier:
|
|
1266
|
+
:type modifier: UnaryFunction1DVoid
|
|
1272
1267
|
"""
|
|
1273
1268
|
...
|
|
1274
1269
|
|
|
1275
|
-
|
|
1270
|
+
@staticmethod
|
|
1271
|
+
def chain(it: ViewEdgeIterator, pred: UnaryPredicate1D):
|
|
1276
1272
|
"""Builds a set of chains from the current set of ViewEdges. Each
|
|
1277
1273
|
ViewEdge of the current list starts a new chain. The chaining
|
|
1278
1274
|
operator then iterates over the ViewEdges of the ViewMap using the
|
|
@@ -1281,84 +1277,88 @@ class Operators:
|
|
|
1281
1277
|
|
|
1282
1278
|
:param it: The iterator on the ViewEdges of the ViewMap. It contains
|
|
1283
1279
|
the chaining rule.
|
|
1284
|
-
:type it:
|
|
1280
|
+
:type it: ViewEdgeIterator
|
|
1285
1281
|
:param pred: The predicate on the ViewEdge that expresses the
|
|
1286
1282
|
stopping condition.
|
|
1287
|
-
:type pred:
|
|
1283
|
+
:type pred: UnaryPredicate1D
|
|
1288
1284
|
"""
|
|
1289
1285
|
...
|
|
1290
1286
|
|
|
1291
|
-
|
|
1287
|
+
@staticmethod
|
|
1288
|
+
def create(pred: UnaryPredicate1D, shaders):
|
|
1292
1289
|
"""Creates and shades the strokes from the current set of chains. A
|
|
1293
1290
|
predicate can be specified to make a selection pass on the chains.
|
|
1294
1291
|
|
|
1295
1292
|
:param pred: The predicate that a chain must verify in order to be
|
|
1296
1293
|
transform as a stroke.
|
|
1297
|
-
:type pred:
|
|
1294
|
+
:type pred: UnaryPredicate1D
|
|
1298
1295
|
:param shaders: The list of shaders used to shade the strokes.
|
|
1299
|
-
:type shaders: typing.List['StrokeShader']
|
|
1300
1296
|
"""
|
|
1301
1297
|
...
|
|
1302
1298
|
|
|
1303
|
-
|
|
1299
|
+
@staticmethod
|
|
1300
|
+
def get_chain_from_index(i: int) -> int:
|
|
1304
1301
|
"""Returns the Chain at the index in the current set of Chains.
|
|
1305
1302
|
|
|
1306
1303
|
:param i: index (0 <= i < Operators.get_chains_size()).
|
|
1307
1304
|
:type i: int
|
|
1308
|
-
:rtype: 'Chain'
|
|
1309
1305
|
:return: The Chain object.
|
|
1306
|
+
:rtype: Chain
|
|
1310
1307
|
"""
|
|
1311
1308
|
...
|
|
1312
1309
|
|
|
1313
|
-
|
|
1310
|
+
@staticmethod
|
|
1311
|
+
def get_chains_size() -> Chain:
|
|
1314
1312
|
"""Returns the number of Chains.
|
|
1315
1313
|
|
|
1316
|
-
:rtype: int
|
|
1317
1314
|
:return: The number of Chains.
|
|
1315
|
+
:rtype: int
|
|
1318
1316
|
"""
|
|
1319
1317
|
...
|
|
1320
1318
|
|
|
1321
|
-
|
|
1319
|
+
@staticmethod
|
|
1320
|
+
def get_stroke_from_index(i: int) -> int:
|
|
1322
1321
|
"""Returns the Stroke at the index in the current set of Strokes.
|
|
1323
1322
|
|
|
1324
1323
|
:param i: index (0 <= i < Operators.get_strokes_size()).
|
|
1325
1324
|
:type i: int
|
|
1326
|
-
:rtype: 'Stroke'
|
|
1327
1325
|
:return: The Stroke object.
|
|
1326
|
+
:rtype: Stroke
|
|
1328
1327
|
"""
|
|
1329
1328
|
...
|
|
1330
1329
|
|
|
1331
|
-
|
|
1330
|
+
@staticmethod
|
|
1331
|
+
def get_strokes_size() -> Stroke:
|
|
1332
1332
|
"""Returns the number of Strokes.
|
|
1333
1333
|
|
|
1334
|
-
:rtype: int
|
|
1335
1334
|
:return: The number of Strokes.
|
|
1335
|
+
:rtype: int
|
|
1336
1336
|
"""
|
|
1337
1337
|
...
|
|
1338
1338
|
|
|
1339
|
-
|
|
1339
|
+
@staticmethod
|
|
1340
|
+
def get_view_edges_size() -> int:
|
|
1340
1341
|
"""Returns the number of ViewEdges.
|
|
1341
1342
|
|
|
1342
|
-
:rtype: int
|
|
1343
1343
|
:return: The number of ViewEdges.
|
|
1344
|
+
:rtype: int
|
|
1344
1345
|
"""
|
|
1345
1346
|
...
|
|
1346
1347
|
|
|
1347
|
-
|
|
1348
|
+
@staticmethod
|
|
1349
|
+
def get_viewedge_from_index(i: int) -> int:
|
|
1348
1350
|
"""Returns the ViewEdge at the index in the current set of ViewEdges.
|
|
1349
1351
|
|
|
1350
1352
|
:param i: index (0 <= i < Operators.get_view_edges_size()).
|
|
1351
1353
|
:type i: int
|
|
1352
|
-
:rtype: 'ViewEdge'
|
|
1353
1354
|
:return: The ViewEdge object.
|
|
1355
|
+
:rtype: ViewEdge
|
|
1354
1356
|
"""
|
|
1355
1357
|
...
|
|
1356
1358
|
|
|
1359
|
+
@staticmethod
|
|
1357
1360
|
def recursive_split(
|
|
1358
|
-
|
|
1359
|
-
func: "UnaryFunction0DDouble",
|
|
1360
|
-
pred_1d: "UnaryPredicate1D",
|
|
1361
|
-
sampling: float = 0.0,
|
|
1361
|
+
func: UnaryFunction0DDouble, pred_1d: UnaryPredicate1D, sampling: float = 0.0
|
|
1362
1362
|
):
|
|
1363
1363
|
"""Splits the current set of chains in a recursive way. We process the
|
|
1364
1364
|
points of each chain (with a specified sampling) to find the point
|
|
@@ -1371,12 +1371,12 @@ class Operators:
|
|
|
1371
1371
|
|
|
1372
1372
|
:param func: The Unary Function evaluated at each point of the chain.
|
|
1373
1373
|
The splitting point is the point minimizing this function.
|
|
1374
|
-
:type func:
|
|
1374
|
+
:type func: UnaryFunction0DDouble
|
|
1375
1375
|
:param pred_1d: The Unary Predicate expressing the recursivity stopping
|
|
1376
1376
|
condition. This predicate is evaluated for each curve before it
|
|
1377
1377
|
actually gets split. If pred_1d(chain) is true, the curve won't be
|
|
1378
1378
|
split anymore.
|
|
1379
|
-
:type pred_1d:
|
|
1379
|
+
:type pred_1d: UnaryPredicate1D
|
|
1380
1380
|
:param sampling: The resolution used to sample the chain for the
|
|
1381
1381
|
predicates evaluation. (The chain is not actually resampled; a
|
|
1382
1382
|
virtual point only progresses along the curve using this
|
|
@@ -1385,11 +1385,11 @@ class Operators:
|
|
|
1385
1385
|
"""
|
|
1386
1386
|
...
|
|
1387
1387
|
|
|
1388
|
+
@staticmethod
|
|
1388
1389
|
def recursive_split(
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
pred_1d: "UnaryPredicate1D",
|
|
1390
|
+
func: UnaryFunction0DDouble,
|
|
1391
|
+
pred_0d: UnaryPredicate0D,
|
|
1392
|
+
pred_1d: UnaryPredicate1D,
|
|
1393
1393
|
sampling: float = 0.0,
|
|
1394
1394
|
):
|
|
1395
1395
|
"""Splits the current set of chains in a recursive way. We process the
|
|
@@ -1403,18 +1403,18 @@ class Operators:
|
|
|
1403
1403
|
|
|
1404
1404
|
:param func: The Unary Function evaluated at each point of the chain.
|
|
1405
1405
|
The splitting point is the point minimizing this function.
|
|
1406
|
-
:type func:
|
|
1406
|
+
:type func: UnaryFunction0DDouble
|
|
1407
1407
|
:param pred_0d: The Unary Predicate 0D used to select the candidate
|
|
1408
1408
|
points where the split can occur. For example, it is very likely
|
|
1409
1409
|
that would rather have your chain splitting around its middle
|
|
1410
1410
|
point than around one of its extremities. A 0D predicate working
|
|
1411
1411
|
on the curvilinear abscissa allows to add this kind of constraints.
|
|
1412
|
-
:type pred_0d:
|
|
1412
|
+
:type pred_0d: UnaryPredicate0D
|
|
1413
1413
|
:param pred_1d: The Unary Predicate expressing the recursivity stopping
|
|
1414
1414
|
condition. This predicate is evaluated for each curve before it
|
|
1415
1415
|
actually gets split. If pred_1d(chain) is true, the curve won't be
|
|
1416
1416
|
split anymore.
|
|
1417
|
-
:type pred_1d:
|
|
1417
|
+
:type pred_1d: UnaryPredicate1D
|
|
1418
1418
|
:param sampling: The resolution used to sample the chain for the
|
|
1419
1419
|
predicates evaluation. (The chain is not actually resampled; a
|
|
1420
1420
|
virtual point only progresses along the curve using this
|
|
@@ -1423,7 +1423,8 @@ class Operators:
|
|
|
1423
1423
|
"""
|
|
1424
1424
|
...
|
|
1425
1425
|
|
|
1426
|
-
|
|
1426
|
+
@staticmethod
|
|
1427
|
+
def reset(delete_strokes: bool = True):
|
|
1427
1428
|
"""Resets the line stylization process to the initial state. The results of
|
|
1428
1429
|
stroke creation are accumulated if delete_strokes is set to False.
|
|
1429
1430
|
|
|
@@ -1432,19 +1433,20 @@ class Operators:
|
|
|
1432
1433
|
"""
|
|
1433
1434
|
...
|
|
1434
1435
|
|
|
1435
|
-
|
|
1436
|
+
@staticmethod
|
|
1437
|
+
def select(pred: UnaryPredicate1D):
|
|
1436
1438
|
"""Selects the ViewEdges of the ViewMap verifying a specified
|
|
1437
1439
|
condition.
|
|
1438
1440
|
|
|
1439
1441
|
:param pred: The predicate expressing this condition.
|
|
1440
|
-
:type pred:
|
|
1442
|
+
:type pred: UnaryPredicate1D
|
|
1441
1443
|
"""
|
|
1442
1444
|
...
|
|
1443
1445
|
|
|
1446
|
+
@staticmethod
|
|
1444
1447
|
def sequential_split(
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
stopping_pred: "UnaryPredicate0D",
|
|
1448
|
+
starting_pred: UnaryPredicate0D,
|
|
1449
|
+
stopping_pred: UnaryPredicate0D,
|
|
1448
1450
|
sampling: float = 0.0,
|
|
1449
1451
|
):
|
|
1450
1452
|
"""Splits each chain of the current set of chains in a sequential way.
|
|
@@ -1455,10 +1457,10 @@ class Operators:
|
|
|
1455
1457
|
|
|
1456
1458
|
:param starting_pred: The predicate on a point that expresses the
|
|
1457
1459
|
starting condition. Each time this condition is verified, a new chain begins
|
|
1458
|
-
:type starting_pred:
|
|
1460
|
+
:type starting_pred: UnaryPredicate0D
|
|
1459
1461
|
:param stopping_pred: The predicate on a point that expresses the
|
|
1460
1462
|
stopping condition. The chain ends as soon as this predicate is verified.
|
|
1461
|
-
:type stopping_pred:
|
|
1463
|
+
:type stopping_pred: UnaryPredicate0D
|
|
1462
1464
|
:param sampling: The resolution used to sample the chain for the
|
|
1463
1465
|
predicates evaluation. (The chain is not actually resampled;
|
|
1464
1466
|
a virtual point only progresses along the curve using this
|
|
@@ -1467,7 +1469,8 @@ class Operators:
|
|
|
1467
1469
|
"""
|
|
1468
1470
|
...
|
|
1469
1471
|
|
|
1470
|
-
|
|
1472
|
+
@staticmethod
|
|
1473
|
+
def sequential_split(pred: UnaryPredicate0D, sampling: float = 0.0):
|
|
1471
1474
|
"""Splits each chain of the current set of chains in a sequential way.
|
|
1472
1475
|
The points of each chain are processed (with a specified sampling)
|
|
1473
1476
|
sequentially. The first point of the initial chain is the
|
|
@@ -1477,7 +1480,7 @@ class Operators:
|
|
|
1477
1480
|
:param pred: The predicate on a point that expresses the splitting condition.
|
|
1478
1481
|
Each time the condition is verified, the chain is split into two chains.
|
|
1479
1482
|
The resulting set of chains is a partition of the initial chain
|
|
1480
|
-
:type pred:
|
|
1483
|
+
:type pred: UnaryPredicate0D
|
|
1481
1484
|
:param sampling: The resolution used to sample the chain for the
|
|
1482
1485
|
predicates evaluation. (The chain is not actually resampled;
|
|
1483
1486
|
a virtual point only progresses along the curve using this
|
|
@@ -1486,12 +1489,13 @@ class Operators:
|
|
|
1486
1489
|
"""
|
|
1487
1490
|
...
|
|
1488
1491
|
|
|
1489
|
-
|
|
1492
|
+
@staticmethod
|
|
1493
|
+
def sort(pred: BinaryPredicate1D):
|
|
1490
1494
|
"""Sorts the current set of chains (or viewedges) according to the
|
|
1491
1495
|
comparison predicate given as argument.
|
|
1492
1496
|
|
|
1493
1497
|
:param pred: The binary predicate used for the comparison.
|
|
1494
|
-
:type pred:
|
|
1498
|
+
:type pred: BinaryPredicate1D
|
|
1495
1499
|
"""
|
|
1496
1500
|
...
|
|
1497
1501
|
|
|
@@ -1500,22 +1504,22 @@ class SShape:
|
|
|
1500
1504
|
elements from an identified input shape.
|
|
1501
1505
|
"""
|
|
1502
1506
|
|
|
1503
|
-
bbox:
|
|
1507
|
+
bbox: BBox
|
|
1504
1508
|
""" The bounding box of the SShape.
|
|
1505
1509
|
|
|
1506
|
-
:type:
|
|
1510
|
+
:type: BBox
|
|
1507
1511
|
"""
|
|
1508
1512
|
|
|
1509
|
-
edges: typing.List[
|
|
1513
|
+
edges: typing.List[FEdge]
|
|
1510
1514
|
""" The list of edges constituting this SShape.
|
|
1511
1515
|
|
|
1512
|
-
:type: typing.List[
|
|
1516
|
+
:type: typing.List[FEdge]
|
|
1513
1517
|
"""
|
|
1514
1518
|
|
|
1515
|
-
id:
|
|
1519
|
+
id: Id
|
|
1516
1520
|
""" The Id of this SShape.
|
|
1517
1521
|
|
|
1518
|
-
:type:
|
|
1522
|
+
:type: Id
|
|
1519
1523
|
"""
|
|
1520
1524
|
|
|
1521
1525
|
name: str
|
|
@@ -1524,38 +1528,38 @@ class SShape:
|
|
|
1524
1528
|
:type: str
|
|
1525
1529
|
"""
|
|
1526
1530
|
|
|
1527
|
-
vertices: typing.List[
|
|
1531
|
+
vertices: typing.List[SVertex]
|
|
1528
1532
|
""" The list of vertices constituting this SShape.
|
|
1529
1533
|
|
|
1530
|
-
:type: typing.List[
|
|
1534
|
+
:type: typing.List[SVertex]
|
|
1531
1535
|
"""
|
|
1532
1536
|
|
|
1533
1537
|
def __init__(self):
|
|
1534
1538
|
"""Creates a `SShape` class using either a default constructor or copy constructor."""
|
|
1535
1539
|
...
|
|
1536
1540
|
|
|
1537
|
-
def __init__(self, brother:
|
|
1541
|
+
def __init__(self, brother: SShape):
|
|
1538
1542
|
"""Creates a `SShape` class using either a default constructor or copy constructor.
|
|
1539
1543
|
|
|
1540
1544
|
:param brother: An SShape object.
|
|
1541
|
-
:type brother:
|
|
1545
|
+
:type brother: SShape
|
|
1542
1546
|
"""
|
|
1543
1547
|
...
|
|
1544
1548
|
|
|
1545
|
-
def add_edge(self, edge:
|
|
1549
|
+
def add_edge(self, edge: FEdge):
|
|
1546
1550
|
"""Adds an FEdge to the list of FEdges.
|
|
1547
1551
|
|
|
1548
1552
|
:param edge: An FEdge object.
|
|
1549
|
-
:type edge:
|
|
1553
|
+
:type edge: FEdge
|
|
1550
1554
|
"""
|
|
1551
1555
|
...
|
|
1552
1556
|
|
|
1553
|
-
def add_vertex(self, vertex:
|
|
1557
|
+
def add_vertex(self, vertex: SVertex):
|
|
1554
1558
|
"""Adds an SVertex to the list of SVertex of this Shape. The SShape
|
|
1555
1559
|
attribute of the SVertex is also set to this SShape.
|
|
1556
1560
|
|
|
1557
1561
|
:param vertex: An SVertex object.
|
|
1558
|
-
:type vertex:
|
|
1562
|
+
:type vertex: SVertex
|
|
1559
1563
|
"""
|
|
1560
1564
|
...
|
|
1561
1565
|
|
|
@@ -1580,19 +1584,16 @@ derivative of the radial curvature at this SVertex, respectively.
|
|
|
1580
1584
|
:type: typing.Tuple
|
|
1581
1585
|
"""
|
|
1582
1586
|
|
|
1583
|
-
id:
|
|
1587
|
+
id: Id
|
|
1584
1588
|
""" The Id of this SVertex.
|
|
1585
1589
|
|
|
1586
|
-
:type:
|
|
1590
|
+
:type: Id
|
|
1587
1591
|
"""
|
|
1588
1592
|
|
|
1589
|
-
normals: typing.
|
|
1593
|
+
normals: typing.Any
|
|
1590
1594
|
""" The normals for this Vertex as a list. In a sharp surface, an SVertex
|
|
1591
1595
|
has exactly one normal. In a smooth surface, an SVertex can have any
|
|
1592
|
-
number of normals.
|
|
1593
|
-
|
|
1594
|
-
:type: typing.List['mathutils.Vector']
|
|
1595
|
-
"""
|
|
1596
|
+
number of normals."""
|
|
1596
1597
|
|
|
1597
1598
|
normals_size: int
|
|
1598
1599
|
""" The number of different normals for this SVertex.
|
|
@@ -1600,23 +1601,23 @@ number of normals.
|
|
|
1600
1601
|
:type: int
|
|
1601
1602
|
"""
|
|
1602
1603
|
|
|
1603
|
-
point_2d: typing.Union[
|
|
1604
|
+
point_2d: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1604
1605
|
""" The projected 3D coordinates of the SVertex.
|
|
1605
1606
|
|
|
1606
|
-
:type: typing.Union[
|
|
1607
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1607
1608
|
"""
|
|
1608
1609
|
|
|
1609
|
-
point_3d: typing.Union[
|
|
1610
|
+
point_3d: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1610
1611
|
""" The 3D coordinates of the SVertex.
|
|
1611
1612
|
|
|
1612
|
-
:type: typing.Union[
|
|
1613
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1613
1614
|
"""
|
|
1614
1615
|
|
|
1615
|
-
viewvertex:
|
|
1616
|
+
viewvertex: ViewVertex
|
|
1616
1617
|
""" If this SVertex is also a ViewVertex, this property refers to the
|
|
1617
1618
|
ViewVertex, and None otherwise.
|
|
1618
1619
|
|
|
1619
|
-
:type:
|
|
1620
|
+
:type: ViewVertex
|
|
1620
1621
|
"""
|
|
1621
1622
|
|
|
1622
1623
|
def __init__(self):
|
|
@@ -1626,47 +1627,44 @@ ViewVertex, and None otherwise.
|
|
|
1626
1627
|
"""
|
|
1627
1628
|
...
|
|
1628
1629
|
|
|
1629
|
-
def __init__(self, brother:
|
|
1630
|
+
def __init__(self, brother: SVertex):
|
|
1630
1631
|
"""Builds a `SVertex` using the default constructor,
|
|
1631
1632
|
copy constructor or the overloaded constructor which builds a `SVertex` from 3D coordinates and an Id.
|
|
1632
1633
|
|
|
1633
1634
|
:param brother: A SVertex object.
|
|
1634
|
-
:type brother:
|
|
1635
|
+
:type brother: SVertex
|
|
1635
1636
|
"""
|
|
1636
1637
|
...
|
|
1637
1638
|
|
|
1638
1639
|
def __init__(
|
|
1639
|
-
self,
|
|
1640
|
-
point_3d: typing.Union["mathutils.Vector", typing.Sequence[float]],
|
|
1641
|
-
id: "Id",
|
|
1640
|
+
self, point_3d: typing.Union[typing.Sequence[float], mathutils.Vector], id: Id
|
|
1642
1641
|
):
|
|
1643
1642
|
"""Builds a `SVertex` using the default constructor,
|
|
1644
1643
|
copy constructor or the overloaded constructor which builds a `SVertex` from 3D coordinates and an Id.
|
|
1645
1644
|
|
|
1646
1645
|
:param point_3d: A three-dimensional vector.
|
|
1647
|
-
:type point_3d: typing.Union[
|
|
1646
|
+
:type point_3d: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1648
1647
|
:param id: An Id object.
|
|
1649
|
-
:type id:
|
|
1648
|
+
:type id: Id
|
|
1650
1649
|
"""
|
|
1651
1650
|
...
|
|
1652
1651
|
|
|
1653
|
-
def add_fedge(self, fedge:
|
|
1652
|
+
def add_fedge(self, fedge: FEdge):
|
|
1654
1653
|
"""Add an FEdge to the list of edges emanating from this SVertex.
|
|
1655
1654
|
|
|
1656
1655
|
:param fedge: An FEdge.
|
|
1657
|
-
:type fedge:
|
|
1656
|
+
:type fedge: FEdge
|
|
1658
1657
|
"""
|
|
1659
1658
|
...
|
|
1660
1659
|
|
|
1661
1660
|
def add_normal(
|
|
1662
|
-
self,
|
|
1663
|
-
normal: typing.Union["mathutils.Vector", typing.List, typing.Sequence[float]],
|
|
1661
|
+
self, normal: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1664
1662
|
):
|
|
1665
1663
|
"""Adds a normal to the SVertex's set of normals. If the same normal
|
|
1666
1664
|
is already in the set, nothing changes.
|
|
1667
1665
|
|
|
1668
1666
|
:param normal: A three-dimensional vector.
|
|
1669
|
-
:type normal: typing.Union[
|
|
1667
|
+
:type normal: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
1670
1668
|
"""
|
|
1671
1669
|
...
|
|
1672
1670
|
|
|
@@ -1676,10 +1674,10 @@ class SVertexIterator:
|
|
|
1676
1674
|
from a ViewEdge by calling verticesBegin() or verticesEnd().
|
|
1677
1675
|
"""
|
|
1678
1676
|
|
|
1679
|
-
object:
|
|
1677
|
+
object: SVertex
|
|
1680
1678
|
""" The SVertex object currently pointed by this iterator.
|
|
1681
1679
|
|
|
1682
|
-
:type:
|
|
1680
|
+
:type: SVertex
|
|
1683
1681
|
"""
|
|
1684
1682
|
|
|
1685
1683
|
t: float
|
|
@@ -1698,32 +1696,32 @@ class SVertexIterator:
|
|
|
1698
1696
|
"""Build an SVertexIterator using either the default constructor, copy constructor,or the overloaded constructor that starts iteration from an SVertex object vertex."""
|
|
1699
1697
|
...
|
|
1700
1698
|
|
|
1701
|
-
def __init__(self, brother:
|
|
1699
|
+
def __init__(self, brother: SVertexIterator):
|
|
1702
1700
|
"""Build an SVertexIterator using either the default constructor, copy constructor,or the overloaded constructor that starts iteration from an SVertex object vertex.
|
|
1703
1701
|
|
|
1704
1702
|
:param brother: An SVertexIterator object.
|
|
1705
|
-
:type brother:
|
|
1703
|
+
:type brother: SVertexIterator
|
|
1706
1704
|
"""
|
|
1707
1705
|
...
|
|
1708
1706
|
|
|
1709
1707
|
def __init__(
|
|
1710
1708
|
self,
|
|
1711
|
-
vertex:
|
|
1712
|
-
begin:
|
|
1713
|
-
previous_edge:
|
|
1714
|
-
next_edge:
|
|
1709
|
+
vertex: SVertex,
|
|
1710
|
+
begin: SVertex,
|
|
1711
|
+
previous_edge: FEdge,
|
|
1712
|
+
next_edge: FEdge,
|
|
1715
1713
|
t: float,
|
|
1716
1714
|
):
|
|
1717
1715
|
"""Build an SVertexIterator using either the default constructor, copy constructor,or the overloaded constructor that starts iteration from an SVertex object vertex.
|
|
1718
1716
|
|
|
1719
1717
|
:param vertex: The SVertex from which the iterator starts iteration.
|
|
1720
|
-
:type vertex:
|
|
1718
|
+
:type vertex: SVertex
|
|
1721
1719
|
:param begin: The first SVertex of a ViewEdge.
|
|
1722
|
-
:type begin:
|
|
1720
|
+
:type begin: SVertex
|
|
1723
1721
|
:param previous_edge: The previous FEdge coming to vertex.
|
|
1724
|
-
:type previous_edge:
|
|
1722
|
+
:type previous_edge: FEdge
|
|
1725
1723
|
:param next_edge: The next FEdge going out from vertex.
|
|
1726
|
-
:type next_edge:
|
|
1724
|
+
:type next_edge: FEdge
|
|
1727
1725
|
:param t: The curvilinear abscissa at vertex.
|
|
1728
1726
|
:type t: float
|
|
1729
1727
|
"""
|
|
@@ -1736,10 +1734,10 @@ class Stroke:
|
|
|
1736
1734
|
defines the stroke's shape and appearance at this vertex position.
|
|
1737
1735
|
"""
|
|
1738
1736
|
|
|
1739
|
-
id:
|
|
1737
|
+
id: Id
|
|
1740
1738
|
""" The Id of this Stroke.
|
|
1741
1739
|
|
|
1742
|
-
:type:
|
|
1740
|
+
:type: Id
|
|
1743
1741
|
"""
|
|
1744
1742
|
|
|
1745
1743
|
length_2d: float
|
|
@@ -1748,10 +1746,10 @@ class Stroke:
|
|
|
1748
1746
|
:type: float
|
|
1749
1747
|
"""
|
|
1750
1748
|
|
|
1751
|
-
medium_type:
|
|
1749
|
+
medium_type: MediumType
|
|
1752
1750
|
""" The MediumType used for this Stroke.
|
|
1753
1751
|
|
|
1754
|
-
:type:
|
|
1752
|
+
:type: MediumType
|
|
1755
1753
|
"""
|
|
1756
1754
|
|
|
1757
1755
|
texture_id: int
|
|
@@ -1774,11 +1772,10 @@ class Stroke:
|
|
|
1774
1772
|
"""Creates a `Stroke` using the default constructor or copy constructor
|
|
1775
1773
|
|
|
1776
1774
|
:param brother:
|
|
1777
|
-
:type brother:
|
|
1778
1775
|
"""
|
|
1779
1776
|
...
|
|
1780
1777
|
|
|
1781
|
-
def compute_sampling(self, n: int) ->
|
|
1778
|
+
def compute_sampling(self, n: int) -> int:
|
|
1782
1779
|
"""Compute the sampling needed to get N vertices. If the
|
|
1783
1780
|
specified number of vertices is less than the actual number of
|
|
1784
1781
|
vertices, the actual sampling value is returned. (To remove Vertices,
|
|
@@ -1787,22 +1784,22 @@ class Stroke:
|
|
|
1787
1784
|
:param n: The number of stroke vertices we eventually want
|
|
1788
1785
|
in our Stroke.
|
|
1789
1786
|
:type n: int
|
|
1790
|
-
:rtype: float
|
|
1791
1787
|
:return: The sampling that must be used in the Resample(float)
|
|
1792
1788
|
method.
|
|
1789
|
+
:rtype: float
|
|
1793
1790
|
"""
|
|
1794
1791
|
...
|
|
1795
1792
|
|
|
1796
|
-
def insert_vertex(self, vertex:
|
|
1793
|
+
def insert_vertex(self, vertex: StrokeVertex, next: StrokeVertexIterator):
|
|
1797
1794
|
"""Inserts the StrokeVertex given as argument into the Stroke before the
|
|
1798
1795
|
point specified by next. The length and curvilinear abscissa are
|
|
1799
1796
|
updated consequently.
|
|
1800
1797
|
|
|
1801
1798
|
:param vertex: The StrokeVertex to insert in the Stroke.
|
|
1802
|
-
:type vertex:
|
|
1799
|
+
:type vertex: StrokeVertex
|
|
1803
1800
|
:param next: A StrokeVertexIterator pointing to the StrokeVertex
|
|
1804
1801
|
before which vertex must be inserted.
|
|
1805
|
-
:type next:
|
|
1802
|
+
:type next: StrokeVertexIterator
|
|
1806
1803
|
"""
|
|
1807
1804
|
...
|
|
1808
1805
|
|
|
@@ -1810,12 +1807,12 @@ class Stroke:
|
|
|
1810
1807
|
"""Removes all vertices from the Stroke."""
|
|
1811
1808
|
...
|
|
1812
1809
|
|
|
1813
|
-
def remove_vertex(self, vertex:
|
|
1810
|
+
def remove_vertex(self, vertex: StrokeVertex):
|
|
1814
1811
|
"""Removes the StrokeVertex given as argument from the Stroke. The length
|
|
1815
1812
|
and curvilinear abscissa are updated consequently.
|
|
1816
1813
|
|
|
1817
1814
|
:param vertex: the StrokeVertex to remove from the Stroke.
|
|
1818
|
-
:type vertex:
|
|
1815
|
+
:type vertex: StrokeVertex
|
|
1819
1816
|
"""
|
|
1820
1817
|
...
|
|
1821
1818
|
|
|
@@ -1841,7 +1838,7 @@ class Stroke:
|
|
|
1841
1838
|
"""
|
|
1842
1839
|
...
|
|
1843
1840
|
|
|
1844
|
-
def stroke_vertices_begin(self, t: float = 0.0) ->
|
|
1841
|
+
def stroke_vertices_begin(self, t: float = 0.0) -> float:
|
|
1845
1842
|
"""Returns a StrokeVertexIterator pointing on the first StrokeVertex of
|
|
1846
1843
|
the Stroke. One can specify a sampling value to re-sample the Stroke
|
|
1847
1844
|
on the fly if needed.
|
|
@@ -1849,25 +1846,25 @@ class Stroke:
|
|
|
1849
1846
|
:param t: The resampling value with which we want our Stroke to be
|
|
1850
1847
|
resampled. If 0 is specified, no resampling is done.
|
|
1851
1848
|
:type t: float
|
|
1852
|
-
:rtype: 'StrokeVertexIterator'
|
|
1853
1849
|
:return: A StrokeVertexIterator pointing on the first StrokeVertex.
|
|
1850
|
+
:rtype: StrokeVertexIterator
|
|
1854
1851
|
"""
|
|
1855
1852
|
...
|
|
1856
1853
|
|
|
1857
|
-
def stroke_vertices_end(self) ->
|
|
1854
|
+
def stroke_vertices_end(self) -> StrokeVertexIterator:
|
|
1858
1855
|
"""Returns a StrokeVertexIterator pointing after the last StrokeVertex
|
|
1859
1856
|
of the Stroke.
|
|
1860
1857
|
|
|
1861
|
-
:rtype: 'StrokeVertexIterator'
|
|
1862
1858
|
:return: A StrokeVertexIterator pointing after the last StrokeVertex.
|
|
1859
|
+
:rtype: StrokeVertexIterator
|
|
1863
1860
|
"""
|
|
1864
1861
|
...
|
|
1865
1862
|
|
|
1866
|
-
def stroke_vertices_size(self) ->
|
|
1863
|
+
def stroke_vertices_size(self) -> StrokeVertexIterator:
|
|
1867
1864
|
"""Returns the number of StrokeVertex constituting the Stroke.
|
|
1868
1865
|
|
|
1869
|
-
:rtype: int
|
|
1870
1866
|
:return: The number of stroke vertices.
|
|
1867
|
+
:rtype: int
|
|
1871
1868
|
"""
|
|
1872
1869
|
...
|
|
1873
1870
|
|
|
@@ -1887,18 +1884,18 @@ class StrokeAttribute:
|
|
|
1887
1884
|
:type: float
|
|
1888
1885
|
"""
|
|
1889
1886
|
|
|
1890
|
-
color: typing.Union[
|
|
1887
|
+
color: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
1891
1888
|
""" RGB components of the stroke color.
|
|
1892
1889
|
|
|
1893
|
-
:type: typing.Union[
|
|
1890
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Color]
|
|
1894
1891
|
"""
|
|
1895
1892
|
|
|
1896
|
-
thickness: typing.Union[
|
|
1893
|
+
thickness: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1897
1894
|
""" Right and left components of the stroke thickness.
|
|
1898
1895
|
The right (left) component is the thickness on the right (left) of the vertex
|
|
1899
1896
|
when following the stroke.
|
|
1900
1897
|
|
|
1901
|
-
:type: typing.Union[
|
|
1898
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
1902
1899
|
"""
|
|
1903
1900
|
|
|
1904
1901
|
visible: bool
|
|
@@ -1915,13 +1912,13 @@ when following the stroke.
|
|
|
1915
1912
|
"""
|
|
1916
1913
|
...
|
|
1917
1914
|
|
|
1918
|
-
def __init__(self, brother:
|
|
1915
|
+
def __init__(self, brother: StrokeAttribute):
|
|
1919
1916
|
"""Creates a `StrokeAttribute` object using either a default constructor,
|
|
1920
1917
|
copy constructor, overloaded constructor, or and interpolation constructor
|
|
1921
1918
|
to interpolate between two `StrokeAttribute` objects.
|
|
1922
1919
|
|
|
1923
1920
|
:param brother: A StrokeAttribute object to be used as a copy constructor.
|
|
1924
|
-
:type brother:
|
|
1921
|
+
:type brother: StrokeAttribute
|
|
1925
1922
|
"""
|
|
1926
1923
|
...
|
|
1927
1924
|
|
|
@@ -1954,80 +1951,80 @@ when following the stroke.
|
|
|
1954
1951
|
...
|
|
1955
1952
|
|
|
1956
1953
|
def __init__(
|
|
1957
|
-
self, attribute1:
|
|
1954
|
+
self, attribute1: StrokeAttribute, attribute2: StrokeAttribute, t: float
|
|
1958
1955
|
):
|
|
1959
1956
|
"""Creates a `StrokeAttribute` object using either a default constructor,
|
|
1960
1957
|
copy constructor, overloaded constructor, or and interpolation constructor
|
|
1961
1958
|
to interpolate between two `StrokeAttribute` objects.
|
|
1962
1959
|
|
|
1963
1960
|
:param attribute1: The first StrokeAttribute object.
|
|
1964
|
-
:type attribute1:
|
|
1961
|
+
:type attribute1: StrokeAttribute
|
|
1965
1962
|
:param attribute2: The second StrokeAttribute object.
|
|
1966
|
-
:type attribute2:
|
|
1963
|
+
:type attribute2: StrokeAttribute
|
|
1967
1964
|
:param t: The interpolation parameter (0 <= t <= 1).
|
|
1968
1965
|
:type t: float
|
|
1969
1966
|
"""
|
|
1970
1967
|
...
|
|
1971
1968
|
|
|
1972
|
-
def get_attribute_real(self, name: str) ->
|
|
1969
|
+
def get_attribute_real(self, name: str) -> str:
|
|
1973
1970
|
"""Returns an attribute of float type.
|
|
1974
1971
|
|
|
1975
1972
|
:param name: The name of the attribute.
|
|
1976
1973
|
:type name: str
|
|
1977
|
-
:rtype: float
|
|
1978
1974
|
:return: The attribute value.
|
|
1975
|
+
:rtype: float
|
|
1979
1976
|
"""
|
|
1980
1977
|
...
|
|
1981
1978
|
|
|
1982
|
-
def get_attribute_vec2(self, name: str) ->
|
|
1979
|
+
def get_attribute_vec2(self, name: str) -> str:
|
|
1983
1980
|
"""Returns an attribute of two-dimensional vector type.
|
|
1984
1981
|
|
|
1985
1982
|
:param name: The name of the attribute.
|
|
1986
1983
|
:type name: str
|
|
1987
|
-
:rtype: 'mathutils.Vector'
|
|
1988
1984
|
:return: The attribute value.
|
|
1985
|
+
:rtype: mathutils.Vector
|
|
1989
1986
|
"""
|
|
1990
1987
|
...
|
|
1991
1988
|
|
|
1992
|
-
def get_attribute_vec3(self, name: str) ->
|
|
1989
|
+
def get_attribute_vec3(self, name: str) -> str:
|
|
1993
1990
|
"""Returns an attribute of three-dimensional vector type.
|
|
1994
1991
|
|
|
1995
1992
|
:param name: The name of the attribute.
|
|
1996
1993
|
:type name: str
|
|
1997
|
-
:rtype: 'mathutils.Vector'
|
|
1998
1994
|
:return: The attribute value.
|
|
1995
|
+
:rtype: mathutils.Vector
|
|
1999
1996
|
"""
|
|
2000
1997
|
...
|
|
2001
1998
|
|
|
2002
|
-
def has_attribute_real(self, name: str) ->
|
|
1999
|
+
def has_attribute_real(self, name: str) -> str:
|
|
2003
2000
|
"""Checks whether the attribute name of float type is available.
|
|
2004
2001
|
|
|
2005
2002
|
:param name: The name of the attribute.
|
|
2006
2003
|
:type name: str
|
|
2007
|
-
:rtype: bool
|
|
2008
2004
|
:return: True if the attribute is available.
|
|
2005
|
+
:rtype: bool
|
|
2009
2006
|
"""
|
|
2010
2007
|
...
|
|
2011
2008
|
|
|
2012
|
-
def has_attribute_vec2(self, name: str) ->
|
|
2009
|
+
def has_attribute_vec2(self, name: str) -> str:
|
|
2013
2010
|
"""Checks whether the attribute name of two-dimensional vector type
|
|
2014
2011
|
is available.
|
|
2015
2012
|
|
|
2016
2013
|
:param name: The name of the attribute.
|
|
2017
2014
|
:type name: str
|
|
2018
|
-
:rtype: bool
|
|
2019
2015
|
:return: True if the attribute is available.
|
|
2016
|
+
:rtype: bool
|
|
2020
2017
|
"""
|
|
2021
2018
|
...
|
|
2022
2019
|
|
|
2023
|
-
def has_attribute_vec3(self, name: str) ->
|
|
2020
|
+
def has_attribute_vec3(self, name: str) -> str:
|
|
2024
2021
|
"""Checks whether the attribute name of three-dimensional vector
|
|
2025
2022
|
type is available.
|
|
2026
2023
|
|
|
2027
2024
|
:param name: The name of the attribute.
|
|
2028
2025
|
:type name: str
|
|
2029
|
-
:rtype: bool
|
|
2030
2026
|
:return: True if the attribute is available.
|
|
2027
|
+
:rtype: bool
|
|
2031
2028
|
"""
|
|
2032
2029
|
...
|
|
2033
2030
|
|
|
@@ -2046,7 +2043,7 @@ when following the stroke.
|
|
|
2046
2043
|
def set_attribute_vec2(
|
|
2047
2044
|
self,
|
|
2048
2045
|
name: str,
|
|
2049
|
-
value: typing.Union[
|
|
2046
|
+
value: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
2050
2047
|
):
|
|
2051
2048
|
"""Adds a user-defined attribute of two-dimensional vector type. If
|
|
2052
2049
|
there is no attribute of the given name, it is added. Otherwise,
|
|
@@ -2055,14 +2052,14 @@ when following the stroke.
|
|
|
2055
2052
|
:param name: The name of the attribute.
|
|
2056
2053
|
:type name: str
|
|
2057
2054
|
:param value: The attribute value.
|
|
2058
|
-
:type value: typing.Union[
|
|
2055
|
+
:type value: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
2059
2056
|
"""
|
|
2060
2057
|
...
|
|
2061
2058
|
|
|
2062
2059
|
def set_attribute_vec3(
|
|
2063
2060
|
self,
|
|
2064
2061
|
name: str,
|
|
2065
|
-
value: typing.Union[
|
|
2062
|
+
value: typing.Union[typing.Sequence[float], mathutils.Vector, list],
|
|
2066
2063
|
):
|
|
2067
2064
|
"""Adds a user-defined attribute of three-dimensional vector type.
|
|
2068
2065
|
If there is no attribute of the given name, it is added.
|
|
@@ -2071,7 +2068,7 @@ when following the stroke.
|
|
|
2071
2068
|
:param name: The name of the attribute.
|
|
2072
2069
|
:type name: str
|
|
2073
2070
|
:param value: The attribute value.
|
|
2074
|
-
:type value: typing.Union[
|
|
2071
|
+
:type value: typing.Union[typing.Sequence[float], mathutils.Vector, list]
|
|
2075
2072
|
"""
|
|
2076
2073
|
...
|
|
2077
2074
|
|
|
@@ -2095,21 +2092,21 @@ class StrokeShader:
|
|
|
2095
2092
|
"""Default constructor."""
|
|
2096
2093
|
...
|
|
2097
2094
|
|
|
2098
|
-
def shade(self, stroke:
|
|
2095
|
+
def shade(self, stroke: Stroke):
|
|
2099
2096
|
"""The shading method. Must be overloaded by inherited classes.
|
|
2100
2097
|
|
|
2101
2098
|
:param stroke: A Stroke object.
|
|
2102
|
-
:type stroke:
|
|
2099
|
+
:type stroke: Stroke
|
|
2103
2100
|
"""
|
|
2104
2101
|
...
|
|
2105
2102
|
|
|
2106
2103
|
class StrokeVertex:
|
|
2107
2104
|
"""Class hierarchy: `Interface0D` > `CurvePoint` > `StrokeVertex`Class to define a stroke vertex."""
|
|
2108
2105
|
|
|
2109
|
-
attribute:
|
|
2106
|
+
attribute: StrokeAttribute
|
|
2110
2107
|
""" StrokeAttribute for this StrokeVertex.
|
|
2111
2108
|
|
|
2112
|
-
:type:
|
|
2109
|
+
:type: StrokeAttribute
|
|
2113
2110
|
"""
|
|
2114
2111
|
|
|
2115
2112
|
curvilinear_abscissa: float
|
|
@@ -2118,10 +2115,10 @@ class StrokeVertex:
|
|
|
2118
2115
|
:type: float
|
|
2119
2116
|
"""
|
|
2120
2117
|
|
|
2121
|
-
point: typing.Union[
|
|
2118
|
+
point: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
2122
2119
|
""" 2D point coordinates.
|
|
2123
2120
|
|
|
2124
|
-
:type: typing.Union[
|
|
2121
|
+
:type: typing.Union[typing.Sequence[float], mathutils.Vector]
|
|
2125
2122
|
"""
|
|
2126
2123
|
|
|
2127
2124
|
stroke_length: float
|
|
@@ -2145,61 +2142,63 @@ and it won't change the real stroke length).
|
|
|
2145
2142
|
"""
|
|
2146
2143
|
...
|
|
2147
2144
|
|
|
2148
|
-
def __init__(self, brother:
|
|
2145
|
+
def __init__(self, brother: StrokeVertex):
|
|
2149
2146
|
"""Builds a `StrokeVertex` using the default constructor,
|
|
2150
2147
|
copy constructor, from 2 `StrokeVertex` and an interpolation parameter,
|
|
2151
2148
|
from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
|
|
2152
2149
|
|
|
2153
2150
|
:param brother: A StrokeVertex object.
|
|
2154
|
-
:type brother:
|
|
2151
|
+
:type brother: StrokeVertex
|
|
2155
2152
|
"""
|
|
2156
2153
|
...
|
|
2157
2154
|
|
|
2158
2155
|
def __init__(
|
|
2159
|
-
self, first_vertex:
|
|
2156
|
+
self, first_vertex: StrokeVertex, second_vertex: StrokeVertex, t3d: float
|
|
2160
2157
|
):
|
|
2161
2158
|
"""Builds a `StrokeVertex` using the default constructor,
|
|
2162
2159
|
copy constructor, from 2 `StrokeVertex` and an interpolation parameter,
|
|
2163
2160
|
from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
|
|
2164
2161
|
|
|
2165
2162
|
:param first_vertex: The first StrokeVertex.
|
|
2166
|
-
:type first_vertex:
|
|
2163
|
+
:type first_vertex: StrokeVertex
|
|
2167
2164
|
:param second_vertex: The second StrokeVertex.
|
|
2168
|
-
:type second_vertex:
|
|
2165
|
+
:type second_vertex: StrokeVertex
|
|
2169
2166
|
:param t3d: An interpolation parameter.
|
|
2170
2167
|
:type t3d: float
|
|
2171
2168
|
"""
|
|
2172
2169
|
...
|
|
2173
2170
|
|
|
2174
|
-
def __init__(self, point:
|
|
2171
|
+
def __init__(self, point: CurvePoint):
|
|
2175
2172
|
"""Builds a `StrokeVertex` using the default constructor,
|
|
2176
2173
|
copy constructor, from 2 `StrokeVertex` and an interpolation parameter,
|
|
2177
2174
|
from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
|
|
2178
2175
|
|
|
2179
2176
|
:param point: A CurvePoint object.
|
|
2180
|
-
:type point:
|
|
2177
|
+
:type point: CurvePoint
|
|
2181
2178
|
"""
|
|
2182
2179
|
...
|
|
2183
2180
|
|
|
2184
|
-
def __init__(self, svertex:
|
|
2181
|
+
def __init__(self, svertex: typing.Union[SVertex, SVertex]):
|
|
2185
2182
|
"""Builds a `StrokeVertex` using the default constructor,
|
|
2186
2183
|
copy constructor, from 2 `StrokeVertex` and an interpolation parameter,
|
|
2187
2184
|
from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
|
|
2188
2185
|
|
|
2189
|
-
:param svertex: An SVertex object.
|
|
2190
|
-
:type svertex:
|
|
2186
|
+
:param svertex: An SVertex object.An SVertex object.
|
|
2187
|
+
:type svertex: typing.Union[SVertex, SVertex]
|
|
2191
2188
|
"""
|
|
2192
2189
|
...
|
|
2193
2190
|
|
|
2194
|
-
def __init__(
|
|
2191
|
+
def __init__(
|
|
2192
|
+
self, svertex: typing.Union[SVertex, SVertex], attribute: StrokeAttribute
|
|
2193
|
+
):
|
|
2195
2194
|
"""Builds a `StrokeVertex` using the default constructor,
|
|
2196
2195
|
copy constructor, from 2 `StrokeVertex` and an interpolation parameter,
|
|
2197
2196
|
from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
|
|
2198
2197
|
|
|
2199
|
-
:param svertex: An SVertex object.
|
|
2200
|
-
:type svertex:
|
|
2198
|
+
:param svertex: An SVertex object.An SVertex object.
|
|
2199
|
+
:type svertex: typing.Union[SVertex, SVertex]
|
|
2201
2200
|
:param attribute: A StrokeAttribute object.
|
|
2202
|
-
:type attribute:
|
|
2201
|
+
:type attribute: StrokeAttribute
|
|
2203
2202
|
"""
|
|
2204
2203
|
...
|
|
2205
2204
|
|
|
@@ -2224,10 +2223,10 @@ For its counterpart (pointing to the first valid element), use it.is_begin.
|
|
|
2224
2223
|
:type: bool
|
|
2225
2224
|
"""
|
|
2226
2225
|
|
|
2227
|
-
object:
|
|
2226
|
+
object: StrokeVertex
|
|
2228
2227
|
""" The StrokeVertex object currently pointed to by this iterator.
|
|
2229
2228
|
|
|
2230
|
-
:type:
|
|
2229
|
+
:type: StrokeVertex
|
|
2231
2230
|
"""
|
|
2232
2231
|
|
|
2233
2232
|
t: float
|
|
@@ -2249,37 +2248,37 @@ For its counterpart (pointing to the first valid element), use it.is_begin.
|
|
|
2249
2248
|
"""
|
|
2250
2249
|
...
|
|
2251
2250
|
|
|
2252
|
-
def __init__(self, brother:
|
|
2251
|
+
def __init__(self, brother: StrokeVertexIterator):
|
|
2253
2252
|
"""Creates a `StrokeVertexIterator` using either the
|
|
2254
2253
|
default constructor or the copy constructor.
|
|
2255
2254
|
|
|
2256
2255
|
:param brother: A StrokeVertexIterator object.
|
|
2257
|
-
:type brother:
|
|
2256
|
+
:type brother: StrokeVertexIterator
|
|
2258
2257
|
"""
|
|
2259
2258
|
...
|
|
2260
2259
|
|
|
2261
|
-
def decremented(self) ->
|
|
2260
|
+
def decremented(self) -> StrokeVertexIterator:
|
|
2262
2261
|
"""Returns a copy of a decremented StrokeVertexIterator.
|
|
2263
2262
|
|
|
2264
|
-
:rtype: 'StrokeVertexIterator'
|
|
2265
2263
|
:return: A StrokeVertexIterator pointing the previous StrokeVertex.
|
|
2264
|
+
:rtype: StrokeVertexIterator
|
|
2266
2265
|
"""
|
|
2267
2266
|
...
|
|
2268
2267
|
|
|
2269
|
-
def incremented(self) ->
|
|
2268
|
+
def incremented(self) -> StrokeVertexIterator:
|
|
2270
2269
|
"""Returns a copy of an incremented StrokeVertexIterator.
|
|
2271
2270
|
|
|
2272
|
-
:rtype: 'StrokeVertexIterator'
|
|
2273
2271
|
:return: A StrokeVertexIterator pointing the next StrokeVertex.
|
|
2272
|
+
:rtype: StrokeVertexIterator
|
|
2274
2273
|
"""
|
|
2275
2274
|
...
|
|
2276
2275
|
|
|
2277
|
-
def reversed(self) ->
|
|
2276
|
+
def reversed(self) -> StrokeVertexIterator:
|
|
2278
2277
|
"""Returns a StrokeVertexIterator that traverses stroke vertices in the
|
|
2279
2278
|
reversed order.
|
|
2280
2279
|
|
|
2281
|
-
:rtype: 'StrokeVertexIterator'
|
|
2282
2280
|
:return: A StrokeVertexIterator traversing stroke vertices backward.
|
|
2281
|
+
:rtype: StrokeVertexIterator
|
|
2283
2282
|
"""
|
|
2284
2283
|
...
|
|
2285
2284
|
|
|
@@ -2291,47 +2290,47 @@ class TVertex:
|
|
|
2291
2290
|
is of invisibility N and the other of invisibility N+1.
|
|
2292
2291
|
"""
|
|
2293
2292
|
|
|
2294
|
-
back_svertex:
|
|
2293
|
+
back_svertex: SVertex
|
|
2295
2294
|
""" The SVertex that is further away from the viewpoint.
|
|
2296
2295
|
|
|
2297
|
-
:type:
|
|
2296
|
+
:type: SVertex
|
|
2298
2297
|
"""
|
|
2299
2298
|
|
|
2300
|
-
front_svertex:
|
|
2299
|
+
front_svertex: SVertex
|
|
2301
2300
|
""" The SVertex that is closer to the viewpoint.
|
|
2302
2301
|
|
|
2303
|
-
:type:
|
|
2302
|
+
:type: SVertex
|
|
2304
2303
|
"""
|
|
2305
2304
|
|
|
2306
|
-
id:
|
|
2305
|
+
id: Id
|
|
2307
2306
|
""" The Id of this TVertex.
|
|
2308
2307
|
|
|
2309
|
-
:type:
|
|
2308
|
+
:type: Id
|
|
2310
2309
|
"""
|
|
2311
2310
|
|
|
2312
2311
|
def __init__(self):
|
|
2313
2312
|
"""Default constructor."""
|
|
2314
2313
|
...
|
|
2315
2314
|
|
|
2316
|
-
def get_mate(self, viewedge:
|
|
2315
|
+
def get_mate(self, viewedge: ViewEdge) -> ViewEdge:
|
|
2317
2316
|
"""Returns the mate edge of the ViewEdge given as argument. If the
|
|
2318
2317
|
ViewEdge is frontEdgeA, frontEdgeB is returned. If the ViewEdge is
|
|
2319
2318
|
frontEdgeB, frontEdgeA is returned. Same for back edges.
|
|
2320
2319
|
|
|
2321
2320
|
:param viewedge: A ViewEdge object.
|
|
2322
|
-
:type viewedge:
|
|
2323
|
-
:rtype: 'ViewEdge'
|
|
2321
|
+
:type viewedge: ViewEdge
|
|
2324
2322
|
:return: The mate edge of the given ViewEdge.
|
|
2323
|
+
:rtype: ViewEdge
|
|
2325
2324
|
"""
|
|
2326
2325
|
...
|
|
2327
2326
|
|
|
2328
|
-
def get_svertex(self, fedge:
|
|
2327
|
+
def get_svertex(self, fedge: FEdge) -> FEdge:
|
|
2329
2328
|
"""Returns the SVertex (among the 2) belonging to the given FEdge.
|
|
2330
2329
|
|
|
2331
2330
|
:param fedge: An FEdge object.
|
|
2332
|
-
:type fedge:
|
|
2333
|
-
:rtype: 'SVertex'
|
|
2331
|
+
:type fedge: FEdge
|
|
2334
2332
|
:return: The SVertex belonging to the given FEdge.
|
|
2333
|
+
:rtype: SVertex
|
|
2335
2334
|
"""
|
|
2336
2335
|
...
|
|
2337
2336
|
|
|
@@ -2463,10 +2462,10 @@ class UnaryFunction1DDouble:
|
|
|
2463
2462
|
`Interface1D` and return a float value.
|
|
2464
2463
|
"""
|
|
2465
2464
|
|
|
2466
|
-
integration_type:
|
|
2465
|
+
integration_type: IntegrationType
|
|
2467
2466
|
""" The integration method.
|
|
2468
2467
|
|
|
2469
|
-
:type:
|
|
2468
|
+
:type: IntegrationType
|
|
2470
2469
|
"""
|
|
2471
2470
|
|
|
2472
2471
|
def __init__(self):
|
|
@@ -2476,12 +2475,12 @@ class UnaryFunction1DDouble:
|
|
|
2476
2475
|
"""
|
|
2477
2476
|
...
|
|
2478
2477
|
|
|
2479
|
-
def __init__(self, integration_type:
|
|
2478
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2480
2479
|
"""Builds a unary 1D function using the default constructor
|
|
2481
2480
|
or the integration method given as an argument.
|
|
2482
2481
|
|
|
2483
2482
|
:param integration_type: An integration method.
|
|
2484
|
-
:type integration_type:
|
|
2483
|
+
:type integration_type: IntegrationType
|
|
2485
2484
|
"""
|
|
2486
2485
|
...
|
|
2487
2486
|
|
|
@@ -2490,10 +2489,10 @@ class UnaryFunction1DEdgeNature:
|
|
|
2490
2489
|
`Interface1D` and return a `Nature` object.
|
|
2491
2490
|
"""
|
|
2492
2491
|
|
|
2493
|
-
integration_type:
|
|
2492
|
+
integration_type: IntegrationType
|
|
2494
2493
|
""" The integration method.
|
|
2495
2494
|
|
|
2496
|
-
:type:
|
|
2495
|
+
:type: IntegrationType
|
|
2497
2496
|
"""
|
|
2498
2497
|
|
|
2499
2498
|
def __init__(self):
|
|
@@ -2503,12 +2502,12 @@ class UnaryFunction1DEdgeNature:
|
|
|
2503
2502
|
"""
|
|
2504
2503
|
...
|
|
2505
2504
|
|
|
2506
|
-
def __init__(self, integration_type:
|
|
2505
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2507
2506
|
"""Builds a unary 1D function using the default constructor
|
|
2508
2507
|
or the integration method given as an argument.
|
|
2509
2508
|
|
|
2510
2509
|
:param integration_type: An integration method.
|
|
2511
|
-
:type integration_type:
|
|
2510
|
+
:type integration_type: IntegrationType
|
|
2512
2511
|
"""
|
|
2513
2512
|
...
|
|
2514
2513
|
|
|
@@ -2517,10 +2516,10 @@ class UnaryFunction1DFloat:
|
|
|
2517
2516
|
`Interface1D` and return a float value.
|
|
2518
2517
|
"""
|
|
2519
2518
|
|
|
2520
|
-
integration_type:
|
|
2519
|
+
integration_type: IntegrationType
|
|
2521
2520
|
""" The integration method.
|
|
2522
2521
|
|
|
2523
|
-
:type:
|
|
2522
|
+
:type: IntegrationType
|
|
2524
2523
|
"""
|
|
2525
2524
|
|
|
2526
2525
|
def __init__(self):
|
|
@@ -2530,12 +2529,12 @@ class UnaryFunction1DFloat:
|
|
|
2530
2529
|
"""
|
|
2531
2530
|
...
|
|
2532
2531
|
|
|
2533
|
-
def __init__(self, integration_type:
|
|
2532
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2534
2533
|
"""Builds a unary 1D function using the default constructor
|
|
2535
2534
|
or the integration method given as an argument.
|
|
2536
2535
|
|
|
2537
2536
|
:param integration_type: An integration method.
|
|
2538
|
-
:type integration_type:
|
|
2537
|
+
:type integration_type: IntegrationType
|
|
2539
2538
|
"""
|
|
2540
2539
|
...
|
|
2541
2540
|
|
|
@@ -2544,10 +2543,10 @@ class UnaryFunction1DUnsigned:
|
|
|
2544
2543
|
`Interface1D` and return an int value.
|
|
2545
2544
|
"""
|
|
2546
2545
|
|
|
2547
|
-
integration_type:
|
|
2546
|
+
integration_type: IntegrationType
|
|
2548
2547
|
""" The integration method.
|
|
2549
2548
|
|
|
2550
|
-
:type:
|
|
2549
|
+
:type: IntegrationType
|
|
2551
2550
|
"""
|
|
2552
2551
|
|
|
2553
2552
|
def __init__(self):
|
|
@@ -2557,12 +2556,12 @@ class UnaryFunction1DUnsigned:
|
|
|
2557
2556
|
"""
|
|
2558
2557
|
...
|
|
2559
2558
|
|
|
2560
|
-
def __init__(self, integration_type:
|
|
2559
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2561
2560
|
"""Builds a unary 1D function using the default constructor
|
|
2562
2561
|
or the integration method given as an argument.
|
|
2563
2562
|
|
|
2564
2563
|
:param integration_type: An integration method.
|
|
2565
|
-
:type integration_type:
|
|
2564
|
+
:type integration_type: IntegrationType
|
|
2566
2565
|
"""
|
|
2567
2566
|
...
|
|
2568
2567
|
|
|
@@ -2571,10 +2570,10 @@ class UnaryFunction1DVec2f:
|
|
|
2571
2570
|
`Interface1D` and return a 2D vector.
|
|
2572
2571
|
"""
|
|
2573
2572
|
|
|
2574
|
-
integration_type:
|
|
2573
|
+
integration_type: IntegrationType
|
|
2575
2574
|
""" The integration method.
|
|
2576
2575
|
|
|
2577
|
-
:type:
|
|
2576
|
+
:type: IntegrationType
|
|
2578
2577
|
"""
|
|
2579
2578
|
|
|
2580
2579
|
def __init__(self):
|
|
@@ -2584,12 +2583,12 @@ class UnaryFunction1DVec2f:
|
|
|
2584
2583
|
"""
|
|
2585
2584
|
...
|
|
2586
2585
|
|
|
2587
|
-
def __init__(self, integration_type:
|
|
2586
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2588
2587
|
"""Builds a unary 1D function using the default constructor
|
|
2589
2588
|
or the integration method given as an argument.
|
|
2590
2589
|
|
|
2591
2590
|
:param integration_type: An integration method.
|
|
2592
|
-
:type integration_type:
|
|
2591
|
+
:type integration_type: IntegrationType
|
|
2593
2592
|
"""
|
|
2594
2593
|
...
|
|
2595
2594
|
|
|
@@ -2598,10 +2597,10 @@ class UnaryFunction1DVec3f:
|
|
|
2598
2597
|
`Interface1D` and return a 3D vector.
|
|
2599
2598
|
"""
|
|
2600
2599
|
|
|
2601
|
-
integration_type:
|
|
2600
|
+
integration_type: IntegrationType
|
|
2602
2601
|
""" The integration method.
|
|
2603
2602
|
|
|
2604
|
-
:type:
|
|
2603
|
+
:type: IntegrationType
|
|
2605
2604
|
"""
|
|
2606
2605
|
|
|
2607
2606
|
def __init__(self):
|
|
@@ -2611,12 +2610,12 @@ class UnaryFunction1DVec3f:
|
|
|
2611
2610
|
"""
|
|
2612
2611
|
...
|
|
2613
2612
|
|
|
2614
|
-
def __init__(self, integration_type:
|
|
2613
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2615
2614
|
"""Builds a unary 1D function using the default constructor
|
|
2616
2615
|
or the integration method given as an argument.
|
|
2617
2616
|
|
|
2618
2617
|
:param integration_type: An integration method.
|
|
2619
|
-
:type integration_type:
|
|
2618
|
+
:type integration_type: IntegrationType
|
|
2620
2619
|
"""
|
|
2621
2620
|
...
|
|
2622
2621
|
|
|
@@ -2626,10 +2625,10 @@ class UnaryFunction1DVectorViewShape:
|
|
|
2626
2625
|
objects.
|
|
2627
2626
|
"""
|
|
2628
2627
|
|
|
2629
|
-
integration_type:
|
|
2628
|
+
integration_type: IntegrationType
|
|
2630
2629
|
""" The integration method.
|
|
2631
2630
|
|
|
2632
|
-
:type:
|
|
2631
|
+
:type: IntegrationType
|
|
2633
2632
|
"""
|
|
2634
2633
|
|
|
2635
2634
|
def __init__(self):
|
|
@@ -2639,12 +2638,12 @@ class UnaryFunction1DVectorViewShape:
|
|
|
2639
2638
|
"""
|
|
2640
2639
|
...
|
|
2641
2640
|
|
|
2642
|
-
def __init__(self, integration_type:
|
|
2641
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2643
2642
|
"""Builds a unary 1D function using the default constructor
|
|
2644
2643
|
or the integration method given as an argument.
|
|
2645
2644
|
|
|
2646
2645
|
:param integration_type: An integration method.
|
|
2647
|
-
:type integration_type:
|
|
2646
|
+
:type integration_type: IntegrationType
|
|
2648
2647
|
"""
|
|
2649
2648
|
...
|
|
2650
2649
|
|
|
@@ -2653,10 +2652,10 @@ class UnaryFunction1DVoid:
|
|
|
2653
2652
|
`Interface1D`.
|
|
2654
2653
|
"""
|
|
2655
2654
|
|
|
2656
|
-
integration_type:
|
|
2655
|
+
integration_type: IntegrationType
|
|
2657
2656
|
""" The integration method.
|
|
2658
2657
|
|
|
2659
|
-
:type:
|
|
2658
|
+
:type: IntegrationType
|
|
2660
2659
|
"""
|
|
2661
2660
|
|
|
2662
2661
|
def __init__(self):
|
|
@@ -2666,12 +2665,12 @@ class UnaryFunction1DVoid:
|
|
|
2666
2665
|
"""
|
|
2667
2666
|
...
|
|
2668
2667
|
|
|
2669
|
-
def __init__(self, integration_type:
|
|
2668
|
+
def __init__(self, integration_type: IntegrationType):
|
|
2670
2669
|
"""Builds a unary 1D function using either a default constructor
|
|
2671
2670
|
or the integration method given as an argument.
|
|
2672
2671
|
|
|
2673
2672
|
:param integration_type: An integration method.
|
|
2674
|
-
:type integration_type:
|
|
2673
|
+
:type integration_type: IntegrationType
|
|
2675
2674
|
"""
|
|
2676
2675
|
...
|
|
2677
2676
|
|
|
@@ -2694,14 +2693,14 @@ class UnaryPredicate0D:
|
|
|
2694
2693
|
"""Default constructor."""
|
|
2695
2694
|
...
|
|
2696
2695
|
|
|
2697
|
-
def __call__(self, it:
|
|
2696
|
+
def __call__(self, it: Interface0DIterator) -> Interface0DIterator:
|
|
2698
2697
|
"""Must be overload by inherited classes.
|
|
2699
2698
|
|
|
2700
2699
|
:param it: The Interface0DIterator pointing onto the Interface0D at
|
|
2701
2700
|
which we wish to evaluate the predicate.
|
|
2702
|
-
:type it:
|
|
2703
|
-
:rtype: bool
|
|
2701
|
+
:type it: Interface0DIterator
|
|
2704
2702
|
:return: True if the condition is satisfied, false otherwise.
|
|
2703
|
+
:rtype: bool
|
|
2705
2704
|
"""
|
|
2706
2705
|
...
|
|
2707
2706
|
|
|
@@ -2724,13 +2723,13 @@ class UnaryPredicate1D:
|
|
|
2724
2723
|
"""Default constructor."""
|
|
2725
2724
|
...
|
|
2726
2725
|
|
|
2727
|
-
def __call__(self, inter:
|
|
2726
|
+
def __call__(self, inter: Interface1D) -> Interface1D:
|
|
2728
2727
|
"""Must be overload by inherited classes.
|
|
2729
2728
|
|
|
2730
2729
|
:param inter: The Interface1D on which we wish to evaluate the predicate.
|
|
2731
|
-
:type inter:
|
|
2732
|
-
:rtype: bool
|
|
2730
|
+
:type inter: Interface1D
|
|
2733
2731
|
:return: True if the condition is satisfied, false otherwise.
|
|
2732
|
+
:rtype: bool
|
|
2734
2733
|
"""
|
|
2735
2734
|
...
|
|
2736
2735
|
|
|
@@ -2746,22 +2745,22 @@ class ViewEdge:
|
|
|
2746
2745
|
:type: int
|
|
2747
2746
|
"""
|
|
2748
2747
|
|
|
2749
|
-
first_fedge:
|
|
2748
|
+
first_fedge: FEdge
|
|
2750
2749
|
""" The first FEdge that constitutes this ViewEdge.
|
|
2751
2750
|
|
|
2752
|
-
:type:
|
|
2751
|
+
:type: FEdge
|
|
2753
2752
|
"""
|
|
2754
2753
|
|
|
2755
|
-
first_viewvertex:
|
|
2754
|
+
first_viewvertex: ViewVertex
|
|
2756
2755
|
""" The first ViewVertex.
|
|
2757
2756
|
|
|
2758
|
-
:type:
|
|
2757
|
+
:type: ViewVertex
|
|
2759
2758
|
"""
|
|
2760
2759
|
|
|
2761
|
-
id:
|
|
2760
|
+
id: Id
|
|
2762
2761
|
""" The Id of this ViewEdge.
|
|
2763
2762
|
|
|
2764
|
-
:type:
|
|
2763
|
+
:type: Id
|
|
2765
2764
|
"""
|
|
2766
2765
|
|
|
2767
2766
|
is_closed: bool
|
|
@@ -2770,29 +2769,29 @@ class ViewEdge:
|
|
|
2770
2769
|
:type: bool
|
|
2771
2770
|
"""
|
|
2772
2771
|
|
|
2773
|
-
last_fedge:
|
|
2772
|
+
last_fedge: FEdge
|
|
2774
2773
|
""" The last FEdge that constitutes this ViewEdge.
|
|
2775
2774
|
|
|
2776
|
-
:type:
|
|
2775
|
+
:type: FEdge
|
|
2777
2776
|
"""
|
|
2778
2777
|
|
|
2779
|
-
last_viewvertex:
|
|
2778
|
+
last_viewvertex: ViewVertex
|
|
2780
2779
|
""" The second ViewVertex.
|
|
2781
2780
|
|
|
2782
|
-
:type:
|
|
2781
|
+
:type: ViewVertex
|
|
2783
2782
|
"""
|
|
2784
2783
|
|
|
2785
|
-
nature:
|
|
2784
|
+
nature: Nature
|
|
2786
2785
|
""" The nature of this ViewEdge.
|
|
2787
2786
|
|
|
2788
|
-
:type:
|
|
2787
|
+
:type: Nature
|
|
2789
2788
|
"""
|
|
2790
2789
|
|
|
2791
|
-
occludee:
|
|
2790
|
+
occludee: ViewShape
|
|
2792
2791
|
""" The shape that is occluded by the ViewShape to which this ViewEdge
|
|
2793
2792
|
belongs to. If no object is occluded, this property is set to None.
|
|
2794
2793
|
|
|
2795
|
-
:type:
|
|
2794
|
+
:type: ViewShape
|
|
2796
2795
|
"""
|
|
2797
2796
|
|
|
2798
2797
|
qi: int
|
|
@@ -2801,21 +2800,21 @@ belongs to. If no object is occluded, this property is set to None.
|
|
|
2801
2800
|
:type: int
|
|
2802
2801
|
"""
|
|
2803
2802
|
|
|
2804
|
-
viewshape:
|
|
2803
|
+
viewshape: ViewShape
|
|
2805
2804
|
""" The ViewShape to which this ViewEdge belongs to.
|
|
2806
2805
|
|
|
2807
|
-
:type:
|
|
2806
|
+
:type: ViewShape
|
|
2808
2807
|
"""
|
|
2809
2808
|
|
|
2810
2809
|
def __init__(self):
|
|
2811
2810
|
"""Builds a `ViewEdge` using the default constructor or the copy constructor."""
|
|
2812
2811
|
...
|
|
2813
2812
|
|
|
2814
|
-
def __init__(self, brother:
|
|
2813
|
+
def __init__(self, brother: ViewEdge):
|
|
2815
2814
|
"""Builds a `ViewEdge` using the default constructor or the copy constructor.
|
|
2816
2815
|
|
|
2817
2816
|
:param brother: A ViewEdge object.
|
|
2818
|
-
:type brother:
|
|
2817
|
+
:type brother: ViewEdge
|
|
2819
2818
|
"""
|
|
2820
2819
|
...
|
|
2821
2820
|
|
|
@@ -2830,22 +2829,22 @@ class ViewEdgeIterator:
|
|
|
2830
2829
|
on a given ViewEdge.
|
|
2831
2830
|
"""
|
|
2832
2831
|
|
|
2833
|
-
begin:
|
|
2832
|
+
begin: ViewEdge
|
|
2834
2833
|
""" The first ViewEdge used for the iteration.
|
|
2835
2834
|
|
|
2836
|
-
:type:
|
|
2835
|
+
:type: ViewEdge
|
|
2837
2836
|
"""
|
|
2838
2837
|
|
|
2839
|
-
current_edge:
|
|
2838
|
+
current_edge: ViewEdge
|
|
2840
2839
|
""" The ViewEdge object currently pointed by this iterator.
|
|
2841
2840
|
|
|
2842
|
-
:type:
|
|
2841
|
+
:type: ViewEdge
|
|
2843
2842
|
"""
|
|
2844
2843
|
|
|
2845
|
-
object:
|
|
2844
|
+
object: ViewEdge
|
|
2846
2845
|
""" The ViewEdge object currently pointed by this iterator.
|
|
2847
2846
|
|
|
2848
|
-
:type:
|
|
2847
|
+
:type: ViewEdge
|
|
2849
2848
|
"""
|
|
2850
2849
|
|
|
2851
2850
|
orientation: bool
|
|
@@ -2858,14 +2857,11 @@ of the "begin" ViewEdge.
|
|
|
2858
2857
|
:type: bool
|
|
2859
2858
|
"""
|
|
2860
2859
|
|
|
2861
|
-
def __init__(
|
|
2862
|
-
self, begin: typing.Optional["ViewEdge"] = None, orientation: bool = True
|
|
2863
|
-
):
|
|
2860
|
+
def __init__(self, begin=None, orientation: bool = True):
|
|
2864
2861
|
"""Builds a ViewEdgeIterator from a starting ViewEdge and its
|
|
2865
2862
|
orientation or the copy constructor.
|
|
2866
2863
|
|
|
2867
2864
|
:param begin: The ViewEdge from where to start the iteration.
|
|
2868
|
-
:type begin: typing.Optional['ViewEdge']
|
|
2869
2865
|
:param orientation: If true, we'll look for the next ViewEdge among
|
|
2870
2866
|
the ViewEdges that surround the ending ViewVertex of begin. If
|
|
2871
2867
|
false, we'll search over the ViewEdges surrounding the ending
|
|
@@ -2874,12 +2870,12 @@ of the "begin" ViewEdge.
|
|
|
2874
2870
|
"""
|
|
2875
2871
|
...
|
|
2876
2872
|
|
|
2877
|
-
def __init__(self, brother:
|
|
2873
|
+
def __init__(self, brother: ViewEdgeIterator):
|
|
2878
2874
|
"""Builds a ViewEdgeIterator from a starting ViewEdge and its
|
|
2879
2875
|
orientation or the copy constructor.
|
|
2880
2876
|
|
|
2881
2877
|
:param brother: A ViewEdgeIterator object.
|
|
2882
|
-
:type brother:
|
|
2878
|
+
:type brother: ViewEdgeIterator
|
|
2883
2879
|
"""
|
|
2884
2880
|
...
|
|
2885
2881
|
|
|
@@ -2890,37 +2886,37 @@ of the "begin" ViewEdge.
|
|
|
2890
2886
|
class ViewMap:
|
|
2891
2887
|
"""Class defining the ViewMap."""
|
|
2892
2888
|
|
|
2893
|
-
scene_bbox:
|
|
2889
|
+
scene_bbox: BBox
|
|
2894
2890
|
""" The 3D bounding box of the scene.
|
|
2895
2891
|
|
|
2896
|
-
:type:
|
|
2892
|
+
:type: BBox
|
|
2897
2893
|
"""
|
|
2898
2894
|
|
|
2899
2895
|
def __init__(self):
|
|
2900
2896
|
"""Default constructor."""
|
|
2901
2897
|
...
|
|
2902
2898
|
|
|
2903
|
-
def get_closest_fedge(self, x: float, y: float) ->
|
|
2899
|
+
def get_closest_fedge(self, x: float, y: float) -> float:
|
|
2904
2900
|
"""Gets the FEdge nearest to the 2D point specified as arguments.
|
|
2905
2901
|
|
|
2906
2902
|
:param x: X coordinate of a 2D point.
|
|
2907
2903
|
:type x: float
|
|
2908
2904
|
:param y: Y coordinate of a 2D point.
|
|
2909
2905
|
:type y: float
|
|
2910
|
-
:rtype: 'FEdge'
|
|
2911
2906
|
:return: The FEdge nearest to the specified 2D point.
|
|
2907
|
+
:rtype: FEdge
|
|
2912
2908
|
"""
|
|
2913
2909
|
...
|
|
2914
2910
|
|
|
2915
|
-
def get_closest_viewedge(self, x: float, y: float) ->
|
|
2911
|
+
def get_closest_viewedge(self, x: float, y: float) -> float:
|
|
2916
2912
|
"""Gets the ViewEdge nearest to the 2D point specified as arguments.
|
|
2917
2913
|
|
|
2918
2914
|
:param x: X coordinate of a 2D point.
|
|
2919
2915
|
:type x: float
|
|
2920
2916
|
:param y: Y coordinate of a 2D point.
|
|
2921
2917
|
:type y: float
|
|
2922
|
-
:rtype: 'ViewEdge'
|
|
2923
2918
|
:return: The ViewEdge nearest to the specified 2D point.
|
|
2919
|
+
:rtype: ViewEdge
|
|
2924
2920
|
"""
|
|
2925
2921
|
...
|
|
2926
2922
|
|
|
@@ -2929,16 +2925,16 @@ class ViewShape:
|
|
|
2929
2925
|
and `ViewEdge`) that are issued from the same input shape.
|
|
2930
2926
|
"""
|
|
2931
2927
|
|
|
2932
|
-
edges: typing.List[
|
|
2928
|
+
edges: typing.List[ViewEdge]
|
|
2933
2929
|
""" The list of ViewEdge objects contained in this ViewShape.
|
|
2934
2930
|
|
|
2935
|
-
:type: typing.List[
|
|
2931
|
+
:type: typing.List[ViewEdge]
|
|
2936
2932
|
"""
|
|
2937
2933
|
|
|
2938
|
-
id:
|
|
2934
|
+
id: Id
|
|
2939
2935
|
""" The Id of this ViewShape.
|
|
2940
2936
|
|
|
2941
|
-
:type:
|
|
2937
|
+
:type: Id
|
|
2942
2938
|
"""
|
|
2943
2939
|
|
|
2944
2940
|
library_path: typing.Union[str, typing.Any]
|
|
@@ -2953,16 +2949,16 @@ class ViewShape:
|
|
|
2953
2949
|
:type: str
|
|
2954
2950
|
"""
|
|
2955
2951
|
|
|
2956
|
-
sshape:
|
|
2952
|
+
sshape: SShape
|
|
2957
2953
|
""" The SShape on top of which this ViewShape is built.
|
|
2958
2954
|
|
|
2959
|
-
:type:
|
|
2955
|
+
:type: SShape
|
|
2960
2956
|
"""
|
|
2961
2957
|
|
|
2962
|
-
vertices: typing.List[
|
|
2958
|
+
vertices: typing.List[ViewVertex]
|
|
2963
2959
|
""" The list of ViewVertex objects contained in this ViewShape.
|
|
2964
2960
|
|
|
2965
|
-
:type: typing.List[
|
|
2961
|
+
:type: typing.List[ViewVertex]
|
|
2966
2962
|
"""
|
|
2967
2963
|
|
|
2968
2964
|
def __init__(self):
|
|
@@ -2972,37 +2968,37 @@ class ViewShape:
|
|
|
2972
2968
|
"""
|
|
2973
2969
|
...
|
|
2974
2970
|
|
|
2975
|
-
def __init__(self, brother:
|
|
2971
|
+
def __init__(self, brother: ViewShape):
|
|
2976
2972
|
"""Builds a `ViewShape` using the default constructor,
|
|
2977
2973
|
copy constructor, or from a `SShape`.
|
|
2978
2974
|
|
|
2979
2975
|
:param brother: A ViewShape object.
|
|
2980
|
-
:type brother:
|
|
2976
|
+
:type brother: ViewShape
|
|
2981
2977
|
"""
|
|
2982
2978
|
...
|
|
2983
2979
|
|
|
2984
|
-
def __init__(self, sshape:
|
|
2980
|
+
def __init__(self, sshape: SShape):
|
|
2985
2981
|
"""Builds a `ViewShape` using the default constructor,
|
|
2986
2982
|
copy constructor, or from a `SShape`.
|
|
2987
2983
|
|
|
2988
2984
|
:param sshape: An SShape object.
|
|
2989
|
-
:type sshape:
|
|
2985
|
+
:type sshape: SShape
|
|
2990
2986
|
"""
|
|
2991
2987
|
...
|
|
2992
2988
|
|
|
2993
|
-
def add_edge(self, edge:
|
|
2989
|
+
def add_edge(self, edge: ViewEdge):
|
|
2994
2990
|
"""Adds a ViewEdge to the list of ViewEdge objects.
|
|
2995
2991
|
|
|
2996
2992
|
:param edge: A ViewEdge object.
|
|
2997
|
-
:type edge:
|
|
2993
|
+
:type edge: ViewEdge
|
|
2998
2994
|
"""
|
|
2999
2995
|
...
|
|
3000
2996
|
|
|
3001
|
-
def add_vertex(self, vertex:
|
|
2997
|
+
def add_vertex(self, vertex: ViewVertex):
|
|
3002
2998
|
"""Adds a ViewVertex to the list of the ViewVertex objects.
|
|
3003
2999
|
|
|
3004
3000
|
:param vertex: A ViewVertex object.
|
|
3005
|
-
:type vertex:
|
|
3001
|
+
:type vertex: ViewVertex
|
|
3006
3002
|
"""
|
|
3007
3003
|
...
|
|
3008
3004
|
|
|
@@ -3018,41 +3014,41 @@ class ViewVertex:
|
|
|
3018
3014
|
`TVertex` class and the `NonTVertex` class.
|
|
3019
3015
|
"""
|
|
3020
3016
|
|
|
3021
|
-
nature:
|
|
3017
|
+
nature: Nature
|
|
3022
3018
|
""" The nature of this ViewVertex.
|
|
3023
3019
|
|
|
3024
|
-
:type:
|
|
3020
|
+
:type: Nature
|
|
3025
3021
|
"""
|
|
3026
3022
|
|
|
3027
|
-
def edges_begin(self) ->
|
|
3023
|
+
def edges_begin(self) -> Nature:
|
|
3028
3024
|
"""Returns an iterator over the ViewEdges that goes to or comes from
|
|
3029
3025
|
this ViewVertex pointing to the first ViewEdge of the list. The
|
|
3030
3026
|
orientedViewEdgeIterator allows to iterate in CCW order over these
|
|
3031
3027
|
ViewEdges and to get the orientation for each ViewEdge
|
|
3032
3028
|
(incoming/outgoing).
|
|
3033
3029
|
|
|
3034
|
-
:rtype: 'orientedViewEdgeIterator'
|
|
3035
3030
|
:return: An orientedViewEdgeIterator pointing to the first ViewEdge.
|
|
3031
|
+
:rtype: orientedViewEdgeIterator
|
|
3036
3032
|
"""
|
|
3037
3033
|
...
|
|
3038
3034
|
|
|
3039
|
-
def edges_end(self) ->
|
|
3035
|
+
def edges_end(self) -> orientedViewEdgeIterator:
|
|
3040
3036
|
"""Returns an orientedViewEdgeIterator over the ViewEdges around this
|
|
3041
3037
|
ViewVertex, pointing after the last ViewEdge.
|
|
3042
3038
|
|
|
3043
|
-
:rtype: 'orientedViewEdgeIterator'
|
|
3044
3039
|
:return: An orientedViewEdgeIterator pointing after the last ViewEdge.
|
|
3040
|
+
:rtype: orientedViewEdgeIterator
|
|
3045
3041
|
"""
|
|
3046
3042
|
...
|
|
3047
3043
|
|
|
3048
|
-
def edges_iterator(self, edge:
|
|
3044
|
+
def edges_iterator(self, edge: ViewEdge) -> ViewEdge:
|
|
3049
3045
|
"""Returns an orientedViewEdgeIterator pointing to the ViewEdge given
|
|
3050
3046
|
as argument.
|
|
3051
3047
|
|
|
3052
3048
|
:param edge: A ViewEdge object.
|
|
3053
|
-
:type edge:
|
|
3054
|
-
:rtype: 'orientedViewEdgeIterator'
|
|
3049
|
+
:type edge: ViewEdge
|
|
3055
3050
|
:return: An orientedViewEdgeIterator pointing to the given ViewEdge.
|
|
3051
|
+
:rtype: orientedViewEdgeIterator
|
|
3056
3052
|
"""
|
|
3057
3053
|
...
|
|
3058
3054
|
|
|
@@ -3063,13 +3059,10 @@ class orientedViewEdgeIterator:
|
|
|
3063
3059
|
obtained from a ViewVertex by calling edges_begin() or edges_end().
|
|
3064
3060
|
"""
|
|
3065
3061
|
|
|
3066
|
-
object: typing.
|
|
3062
|
+
object: typing.Any
|
|
3067
3063
|
""" The oriented ViewEdge (i.e., a tuple of the pointed ViewEdge and a boolean
|
|
3068
3064
|
value) currently pointed to by this iterator. If the boolean value is true,
|
|
3069
|
-
the ViewEdge is incoming.
|
|
3070
|
-
|
|
3071
|
-
:type: typing.Union['ViewEdge', bool]
|
|
3072
|
-
"""
|
|
3065
|
+
the ViewEdge is incoming."""
|
|
3073
3066
|
|
|
3074
3067
|
def __init__(self):
|
|
3075
3068
|
"""Creates an `orientedViewEdgeIterator` using either the
|
|
@@ -3078,11 +3071,11 @@ the ViewEdge is incoming.
|
|
|
3078
3071
|
"""
|
|
3079
3072
|
...
|
|
3080
3073
|
|
|
3081
|
-
def __init__(self, iBrother:
|
|
3074
|
+
def __init__(self, iBrother: orientedViewEdgeIterator):
|
|
3082
3075
|
"""Creates an `orientedViewEdgeIterator` using either the
|
|
3083
3076
|
default constructor or the copy constructor.
|
|
3084
3077
|
|
|
3085
3078
|
:param iBrother: An orientedViewEdgeIterator object.
|
|
3086
|
-
:type iBrother:
|
|
3079
|
+
:type iBrother: orientedViewEdgeIterator
|
|
3087
3080
|
"""
|
|
3088
3081
|
...
|