sketchup-api-stubs 0.6.1 → 0.7.4
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.
- checksums.yaml +4 -4
- data/.yardopts +2 -0
- data/lib/sketchup-api-stubs.rb +1 -1
- data/lib/sketchup-api-stubs/sketchup.rb +145 -145
- data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +318 -318
- data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
- data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
- data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
- data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -401
- data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
- data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +492 -492
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
- data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
- data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -523
- data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +691 -691
- data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
- data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +573 -569
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +411 -411
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +174 -186
- data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
- data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +514 -455
- data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
- data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +143 -155
- data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -359
- data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +349 -349
- data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -123
- data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
- data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -86
- data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +371 -371
- data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
- data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
- data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +220 -232
- data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -563
- data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
- data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
- data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
- data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
- data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +204 -216
- data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
- data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
- data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +694 -547
- data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
- data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
- data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
- data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
- data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +140 -140
- data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +157 -157
- data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +328 -328
- data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +577 -577
- data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
- data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
- data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +281 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +562 -554
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
- data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
- data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +194 -194
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +329 -329
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +72 -72
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +102 -102
- data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +312 -312
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +38 -38
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
- data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +390 -390
- data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +508 -508
- data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1119 -1097
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +125 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +544 -537
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +59 -59
- data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +750 -750
- data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +697 -697
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +285 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
- data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +409 -409
- data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +226 -226
- data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +190 -190
- data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +393 -393
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +82 -82
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +303 -303
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +285 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +244 -231
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +136 -136
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -123
- data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
- data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +416 -416
- data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +311 -311
- data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +141 -141
- data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +95 -95
- data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1638 -1483
- data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +356 -356
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -282
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
- data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +770 -650
- data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +76 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +456 -456
- data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -356
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +44 -44
- data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
- data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +454 -454
- data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
- data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +57 -57
- data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
- data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +225 -225
- data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +829 -829
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +154 -154
- data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +61 -61
- data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1301 -995
- data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/UI/Command.rb +310 -310
- data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +356 -356
- data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +229 -229
- data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
- data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -633
- data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -303
- data/lib/sketchup-api-stubs/stubs/array.rb +741 -741
- data/lib/sketchup-api-stubs/stubs/geom.rb +348 -233
- data/lib/sketchup-api-stubs/stubs/languagehandler.rb +92 -92
- data/lib/sketchup-api-stubs/stubs/length.rb +278 -262
- data/lib/sketchup-api-stubs/stubs/numeric.rb +249 -249
- data/lib/sketchup-api-stubs/stubs/sketchup.rb +1310 -1310
- data/lib/sketchup-api-stubs/stubs/sketchupextension.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/string.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/ui.rb +667 -660
- metadata +2 -16
@@ -1,86 +1,91 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# A raster image entity.
|
5
|
-
#
|
6
|
-
# @example
|
7
|
-
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
8
|
-
# clip_mask = image.clip_mask
|
9
|
-
# if clip_mask.is_a?(Layout::Rectangle)
|
10
|
-
# point1 = Geom::Point2d.new(1, 1)
|
11
|
-
# point2 = Geom::Point2d.new(2, 2)
|
12
|
-
# bounds = [point1, point2]
|
13
|
-
# image.clip_mask = Layout::Ellipse.new(bounds)
|
14
|
-
# end
|
15
|
-
#
|
16
|
-
# @version LayOut 2018
|
17
|
-
class Layout::Image < Layout::Entity
|
18
|
-
|
19
|
-
# Instance Methods
|
20
|
-
|
21
|
-
# The {#clip_mask} method returns the clip mask of the {Layout::Image}, or
|
22
|
-
# +nil+ if it does not have a clip mask.
|
23
|
-
#
|
24
|
-
# @example
|
25
|
-
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
26
|
-
# clip_mask = image.clip_mask
|
27
|
-
#
|
28
|
-
# @return [Layout::Entity] The clip mask can be a {Layout::Path},
|
29
|
-
# {Layout::Rectangle}, or {Layout::Ellipse}.
|
30
|
-
#
|
31
|
-
# @version LayOut 2018
|
32
|
-
def clip_mask
|
33
|
-
end
|
34
|
-
|
35
|
-
# The {#clip_mask=} method sets the clip mask of the {Layout::Image}.
|
36
|
-
#
|
37
|
-
#
|
38
|
-
#
|
39
|
-
#
|
40
|
-
#
|
41
|
-
#
|
42
|
-
#
|
43
|
-
#
|
44
|
-
#
|
45
|
-
#
|
46
|
-
#
|
47
|
-
#
|
48
|
-
#
|
49
|
-
# @
|
50
|
-
#
|
51
|
-
#
|
52
|
-
#
|
53
|
-
#
|
54
|
-
#
|
55
|
-
#
|
56
|
-
# @raise [
|
57
|
-
#
|
58
|
-
#
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
#
|
63
|
-
#
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
#
|
71
|
-
#
|
72
|
-
#
|
73
|
-
# @
|
74
|
-
#
|
75
|
-
#
|
76
|
-
#
|
77
|
-
#
|
78
|
-
# @raise [
|
79
|
-
#
|
80
|
-
# @
|
81
|
-
#
|
82
|
-
#
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
1
|
+
# Copyright:: Copyright 2020 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# A raster image entity.
|
5
|
+
#
|
6
|
+
# @example
|
7
|
+
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
8
|
+
# clip_mask = image.clip_mask
|
9
|
+
# if clip_mask.is_a?(Layout::Rectangle)
|
10
|
+
# point1 = Geom::Point2d.new(1, 1)
|
11
|
+
# point2 = Geom::Point2d.new(2, 2)
|
12
|
+
# bounds = [point1, point2]
|
13
|
+
# image.clip_mask = Layout::Ellipse.new(bounds)
|
14
|
+
# end
|
15
|
+
#
|
16
|
+
# @version LayOut 2018
|
17
|
+
class Layout::Image < Layout::Entity
|
18
|
+
|
19
|
+
# Instance Methods
|
20
|
+
|
21
|
+
# The {#clip_mask} method returns the clip mask of the {Layout::Image}, or
|
22
|
+
# +nil+ if it does not have a clip mask.
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
26
|
+
# clip_mask = image.clip_mask
|
27
|
+
#
|
28
|
+
# @return [Layout::Entity] The clip mask can be a {Layout::Path},
|
29
|
+
# {Layout::Rectangle}, or {Layout::Ellipse}.
|
30
|
+
#
|
31
|
+
# @version LayOut 2018
|
32
|
+
def clip_mask
|
33
|
+
end
|
34
|
+
|
35
|
+
# The {#clip_mask=} method sets the clip mask of the {Layout::Image}. clip_mask
|
36
|
+
# can be a {Layout::Rectangle}, {Layout::Ellipse}, or {Layout::Path}, or +nil+,
|
37
|
+
# and it must not currently exist in a {Layout::Document}, or {Layout::Group}.
|
38
|
+
#
|
39
|
+
# @example
|
40
|
+
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
41
|
+
# point1 = Geom::Point2d.new(1, 1)
|
42
|
+
# point2 = Geom::Point2d.new(2, 2)
|
43
|
+
# bounds = [point1, point2]
|
44
|
+
# clip_mask = Layout::Rectangle.new(bounds)
|
45
|
+
# image.clip_mask = clip_mask
|
46
|
+
#
|
47
|
+
# @note +clip_mask+ may be +nil+ as of LayOut 2020.1.
|
48
|
+
#
|
49
|
+
# @param [Layout::Entity, nil] clip_mask
|
50
|
+
# The clip mask can be a {Layout::Path},
|
51
|
+
# {Layout::Rectangle}, {Layout::Ellipse}, or +nil+.
|
52
|
+
#
|
53
|
+
# @raise [ArgumentError] if clip mask is already in a {Layout::Document} or
|
54
|
+
# {Layout::Group}
|
55
|
+
#
|
56
|
+
# @raise [ArgumentError] if clip mask is not a {Layout::Path},
|
57
|
+
# {Layout::Rectangle}, or {Layout::Ellipse}
|
58
|
+
#
|
59
|
+
# @raise [LockedLayerError] if the {Layout::Image} is on a locked {Layout::Layer}
|
60
|
+
#
|
61
|
+
# @raise [LockedEntityError] if the {Layout::Image} is locked
|
62
|
+
#
|
63
|
+
# @version LayOut 2018
|
64
|
+
def clip_mask=(clip_mask)
|
65
|
+
end
|
66
|
+
|
67
|
+
# The {#initialize} method creates a new {Layout::Image} from a given image
|
68
|
+
# file.
|
69
|
+
#
|
70
|
+
# @example
|
71
|
+
# image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
|
72
|
+
#
|
73
|
+
# @param [String] path
|
74
|
+
# The path to the file
|
75
|
+
#
|
76
|
+
# @param [Geom::Bounds2d] bounds
|
77
|
+
#
|
78
|
+
# @raise [ArgumentError] if bounds are zero size
|
79
|
+
#
|
80
|
+
# @raise [ArgumentError] if there was an error reading the image file, such as
|
81
|
+
# the file name being invalid
|
82
|
+
#
|
83
|
+
# @raise [RuntimeError] if there was an error allocating memory for the image
|
84
|
+
#
|
85
|
+
# @return [Layout::Image]
|
86
|
+
#
|
87
|
+
# @version LayOut 2018
|
88
|
+
def initialize(path, bounds)
|
89
|
+
end
|
90
|
+
|
91
|
+
end
|
@@ -1,371 +1,371 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# This is an interface to a label entity. A {Layout::Label} consists of a
|
5
|
-
# {Layout::FormattedText} and the label leader {Layout::Path}. A
|
6
|
-
# {Layout::Label} may be connected to another {Layout::Entity} via a
|
7
|
-
# {Layout::ConnectionPoint}.
|
8
|
-
#
|
9
|
-
# @version LayOut 2018
|
10
|
-
class Layout::Label < Layout::Entity
|
11
|
-
|
12
|
-
# Constants
|
13
|
-
|
14
|
-
CONNECTION_TYPE_AUTO = nil # Stub value.
|
15
|
-
CONNECTION_TYPE_BOTTOM_LEFT = nil # Stub value.
|
16
|
-
CONNECTION_TYPE_BOTTOM_RIGHT = nil # Stub value.
|
17
|
-
CONNECTION_TYPE_CENTER_LEFT = nil # Stub value.
|
18
|
-
CONNECTION_TYPE_CENTER_RIGHT = nil # Stub value.
|
19
|
-
CONNECTION_TYPE_NONE = nil # Stub value.
|
20
|
-
CONNECTION_TYPE_REVERSE_AUTO = nil # Stub value.
|
21
|
-
CONNECTION_TYPE_TOP_LEFT = nil # Stub value.
|
22
|
-
CONNECTION_TYPE_TOP_RIGHT = nil # Stub value.
|
23
|
-
|
24
|
-
LEADER_LINE_TYPE_BEZIER = nil # Stub value.
|
25
|
-
LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
|
26
|
-
LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
|
27
|
-
LEADER_LINE_TYPE_UNKNOWN = nil # Stub value.
|
28
|
-
|
29
|
-
# Instance Methods
|
30
|
-
|
31
|
-
# The {#connect} method connects the {Layout::Label} to the given
|
32
|
-
# {Layout::ConnectionPoint}. The leader line will be adjusted to point at the
|
33
|
-
# {Layout::ConnectionPoint}. The {Layout::Label} must be in the same
|
34
|
-
# {Layout::Document} as the {Layout::ConnectionPoint}. If both the
|
35
|
-
# {Layout::Label} and the {Layout::ConnectionPoint}'s {Layout::Entity} are on
|
36
|
-
# non-shared {Layout::Layer}s, they must be on the same {Layout::Page}.
|
37
|
-
#
|
38
|
-
# @example
|
39
|
-
# text = "A label"
|
40
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
41
|
-
# target_point = Geom::Point2d.new(1, 1)
|
42
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
43
|
-
# label = Layout::Label.new(text, leader_type, target_point, bounds)
|
44
|
-
# rect = Layout::Rectangle.new([4, 4, 4, 4])
|
45
|
-
#
|
46
|
-
# doc = Layout::Document.new
|
47
|
-
# doc.add_entity(label, doc.layers.first, doc.pages.first)
|
48
|
-
# doc.add_entity(rect, doc.layers.first, doc.pages.first)
|
49
|
-
#
|
50
|
-
# point = Geom::Point2d.new(4, 4)
|
51
|
-
# # Create a Connection Point to a LayOut Entity in the Document
|
52
|
-
# cp = Layout::ConnectionPoint.new(rect, point)
|
53
|
-
# label.connect(cp)
|
54
|
-
#
|
55
|
-
# @param [Layout::ConnectionPoint] connection_point
|
56
|
-
#
|
57
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
58
|
-
# {Layout::Layer}
|
59
|
-
#
|
60
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
61
|
-
#
|
62
|
-
# @raise [ArgumentError] if the {Layout::Label} is not in the same
|
63
|
-
# {Layout::Document} as the {Layout::ConnectionPoint}
|
64
|
-
#
|
65
|
-
# @raise [ArgumentError] if both the {Layout::Label} and the
|
66
|
-
# {Layout::ConnectionPoint} are on non-shared {Layout::Layers}, but are not
|
67
|
-
# on the same {Layout::Page}.
|
68
|
-
#
|
69
|
-
# @version LayOut 2018
|
70
|
-
def connect(connection_point)
|
71
|
-
end
|
72
|
-
|
73
|
-
# The {#connection_type} method returns the type of the text connection for the
|
74
|
-
# {Layout::Label}.
|
75
|
-
#
|
76
|
-
# The leader line type can be one of the following values:
|
77
|
-
# [+Layout::Label::CONNECTION_TYPE_NONE+]
|
78
|
-
# [+Layout::Label::CONNECTION_TYPE_AUTO+]
|
79
|
-
# [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
|
80
|
-
# [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
|
81
|
-
# [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
|
82
|
-
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
|
83
|
-
# [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
|
84
|
-
# [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
|
85
|
-
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
|
86
|
-
#
|
87
|
-
# @example
|
88
|
-
# text = "A label"
|
89
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
90
|
-
# target_point = Geom::Point2d.new(1, 1)
|
91
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
92
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
93
|
-
# bounds)
|
94
|
-
# text_connection_type = label_from_bounds.connection_type
|
95
|
-
#
|
96
|
-
# @return [Integer]
|
97
|
-
#
|
98
|
-
# @version LayOut 2018
|
99
|
-
def connection_type
|
100
|
-
end
|
101
|
-
|
102
|
-
# The {#connection_type=} method sets the type of the text connection for the
|
103
|
-
# {Layout::Label}.
|
104
|
-
#
|
105
|
-
# The leader line type can be one of the following values:
|
106
|
-
# [+Layout::Label::CONNECTION_TYPE_NONE+]
|
107
|
-
# [+Layout::Label::CONNECTION_TYPE_AUTO+]
|
108
|
-
# [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
|
109
|
-
# [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
|
110
|
-
# [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
|
111
|
-
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
|
112
|
-
# [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
|
113
|
-
# [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
|
114
|
-
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
|
115
|
-
#
|
116
|
-
# @example
|
117
|
-
# text = "A label"
|
118
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
119
|
-
# target_point = Geom::Point2d.new(1, 1)
|
120
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
121
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
122
|
-
# bounds)
|
123
|
-
# label_from_bounds.connection_type = Layout::Label::CONNECTION_TYPE_TOP_LEFT
|
124
|
-
#
|
125
|
-
# @param [Integer] connection_type
|
126
|
-
#
|
127
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
128
|
-
# {Layout::Layer}
|
129
|
-
#
|
130
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
131
|
-
#
|
132
|
-
# @raise [ArgumentError] if the connection_type is not a valid text connection
|
133
|
-
# type
|
134
|
-
#
|
135
|
-
# @version LayOut 2018
|
136
|
-
def connection_type=(connection_type)
|
137
|
-
end
|
138
|
-
|
139
|
-
# The {#disconnect} method disconnects the {Layout::Label} from its
|
140
|
-
# {Layout::ConnectionPoint}. The leader line will not be adjusted by
|
141
|
-
# disconnecting from a {Layout::ConnectionPoint}.
|
142
|
-
#
|
143
|
-
# @example
|
144
|
-
# doc = Layout::Document.open("C:/path/to/document.layout")
|
145
|
-
# label = doc.pages.first.entities.first
|
146
|
-
# label.disconnect
|
147
|
-
#
|
148
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
149
|
-
# {Layout::Layer}
|
150
|
-
#
|
151
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
152
|
-
#
|
153
|
-
# @version LayOut 2018
|
154
|
-
def disconnect
|
155
|
-
end
|
156
|
-
|
157
|
-
# The {#entities} method returns the {Layout::Entities} that represent the
|
158
|
-
# {Layout::Label} in its exploded form.
|
159
|
-
#
|
160
|
-
# @example
|
161
|
-
# text = "A label"
|
162
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
163
|
-
# target_point = Geom::Point2d.new(1, 1)
|
164
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
165
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
166
|
-
# bounds)
|
167
|
-
# entities = label_from_bounds.entities
|
168
|
-
#
|
169
|
-
# @overload entities
|
170
|
-
#
|
171
|
-
# @return [Layout::Entities]
|
172
|
-
#
|
173
|
-
# @overload entities(page)
|
174
|
-
#
|
175
|
-
# @param [Layout::Page] page The {Layout::Page} to use to convert an
|
176
|
-
# auto text tag to display text
|
177
|
-
# @return [Layout::Entities]
|
178
|
-
#
|
179
|
-
# @raise [ArgumentError] if page does not belong to the same document as the
|
180
|
-
# [Layout::Label]
|
181
|
-
#
|
182
|
-
# @version LayOut 2018
|
183
|
-
def entities(*args)
|
184
|
-
end
|
185
|
-
|
186
|
-
# The {#initialize} method creates a new disconnected {Layout::Label}.
|
187
|
-
#
|
188
|
-
# @example
|
189
|
-
# text = "A label"
|
190
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
191
|
-
# target_point = Geom::Point2d.new(1, 1)
|
192
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
193
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
194
|
-
# bounds)
|
195
|
-
# anchor_point = Geom::Point2d.new(2, 2)
|
196
|
-
# anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_RIGHT
|
197
|
-
# label_from_point = Layout::Label.new(text, leader_type, target_point,
|
198
|
-
# anchor_point, anchor_type)
|
199
|
-
#
|
200
|
-
# @overload initialize(text, leader_type, target_point, bounds)
|
201
|
-
#
|
202
|
-
# @param [String] text The label text
|
203
|
-
# @param [Integer] leader_type The leader line type
|
204
|
-
# @param [Geom::Point2d] target_point Where the label leader should point to
|
205
|
-
# @param [Geom::Bounds2d] bounds
|
206
|
-
# @return [Layout::Label]
|
207
|
-
#
|
208
|
-
# @overload initialize(text, leader_type, target_point, anchor_point,
|
209
|
-
#
|
210
|
-
# anchor_type)
|
211
|
-
# @param [String] text The label text
|
212
|
-
# @param [Integer] leader_type The leader line type
|
213
|
-
# @param [Geom::Point2d] target_point Where the label leader should point to
|
214
|
-
# @param [Geom::Point2d] anchor_point The anchor point for the label text's
|
215
|
-
# position.
|
216
|
-
# @param [Integer] anchor_type Defines which point of the label text is set
|
217
|
-
# by anchor_point.
|
218
|
-
# @return [Layout::Label]
|
219
|
-
#
|
220
|
-
# @raise [ArgumentError] if anchor_type is not a valid anchor type
|
221
|
-
#
|
222
|
-
# @raise [ArgumentError] if leader_type is not a valid leader line type
|
223
|
-
#
|
224
|
-
# @raise [ArgumentError] if bounds is zero size
|
225
|
-
#
|
226
|
-
# @raise [ArgumentError] if plain_text is an empty string
|
227
|
-
#
|
228
|
-
# @version LayOut 2018
|
229
|
-
def initialize(*args)
|
230
|
-
end
|
231
|
-
|
232
|
-
# The {#leader_line} method returns a copy of the leader line.
|
233
|
-
#
|
234
|
-
# @example
|
235
|
-
# text = "A label"
|
236
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
237
|
-
# target_point = Geom::Point2d.new(1, 1)
|
238
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
239
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
240
|
-
# bounds)
|
241
|
-
# leader = label_from_bounds.leader_line
|
242
|
-
#
|
243
|
-
# @return [Layout::Path]
|
244
|
-
#
|
245
|
-
# @version LayOut 2018
|
246
|
-
def leader_line
|
247
|
-
end
|
248
|
-
|
249
|
-
# The {#leader_line=} method sets the leader line.
|
250
|
-
#
|
251
|
-
# @example
|
252
|
-
# text = "A label"
|
253
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
254
|
-
# target_point = Geom::Point2d.new(1, 1)
|
255
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
256
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
257
|
-
# bounds)
|
258
|
-
# path = Layout::Path.new(Geom::Point2d.new(1, 2), Geom::Point2d.new(2, 3))
|
259
|
-
# label_from_bounds.leader_line = path
|
260
|
-
#
|
261
|
-
# @param [Layout::Path] leader_path
|
262
|
-
#
|
263
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
264
|
-
# {Layout::Layer}
|
265
|
-
#
|
266
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
267
|
-
#
|
268
|
-
# @version LayOut 2018
|
269
|
-
def leader_line=(leader_path)
|
270
|
-
end
|
271
|
-
|
272
|
-
# The {#leader_line_type} method returns the type of the leader line for the
|
273
|
-
# {Layout::Label}.
|
274
|
-
#
|
275
|
-
# The leader line type can be one of the following values:
|
276
|
-
# [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
|
277
|
-
# [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
|
278
|
-
# [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
|
279
|
-
# [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
|
280
|
-
#
|
281
|
-
# @example
|
282
|
-
# text = "A label"
|
283
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
284
|
-
# target_point = Geom::Point2d.new(1, 1)
|
285
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
286
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
287
|
-
# bounds)
|
288
|
-
# leader_type = label_from_bounds.leader_line_type
|
289
|
-
#
|
290
|
-
# @return [Integer]
|
291
|
-
#
|
292
|
-
# @version LayOut 2018
|
293
|
-
def leader_line_type
|
294
|
-
end
|
295
|
-
|
296
|
-
# The {#leader_line_type=} method sets the type of the leader line for the
|
297
|
-
# {Layout::Label}.
|
298
|
-
#
|
299
|
-
# The leader line type can be one of the following values:
|
300
|
-
# [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
|
301
|
-
# [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
|
302
|
-
# [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
|
303
|
-
# [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
|
304
|
-
#
|
305
|
-
# @example
|
306
|
-
# text = "A label"
|
307
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
308
|
-
# target_point = Geom::Point2d.new(1, 1)
|
309
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
310
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
311
|
-
# bounds)
|
312
|
-
# label_from_bounds.leader_line_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
313
|
-
#
|
314
|
-
# @param [Integer] leader_type
|
315
|
-
#
|
316
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
317
|
-
# {Layout::Layer}
|
318
|
-
#
|
319
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
320
|
-
#
|
321
|
-
# @raise [ArgumentError] if leader_type is
|
322
|
-
# +Layout::Label::LEADER_LINE_TYPE_UNKNOWN+ or not a valid leader line type
|
323
|
-
#
|
324
|
-
# @version LayOut 2018
|
325
|
-
def leader_line_type=(leader_type)
|
326
|
-
end
|
327
|
-
|
328
|
-
# The {#text} method returns a copy of the {Layout::FormattedText} of the
|
329
|
-
# {Layout::Label}.
|
330
|
-
#
|
331
|
-
# @example
|
332
|
-
# text = "A label"
|
333
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
334
|
-
# target_point = Geom::Point2d.new(1, 1)
|
335
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
336
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
337
|
-
# bounds)
|
338
|
-
# text = label_from_bounds.text
|
339
|
-
#
|
340
|
-
# @return [Layout::FormattedText]
|
341
|
-
#
|
342
|
-
# @version LayOut 2018
|
343
|
-
def text
|
344
|
-
end
|
345
|
-
|
346
|
-
# The {#text=} method sets the {Layout::FormattedText} of the {Layout::Label}.
|
347
|
-
#
|
348
|
-
# @example
|
349
|
-
# text = "A label"
|
350
|
-
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
351
|
-
# target_point = Geom::Point2d.new(1, 1)
|
352
|
-
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
353
|
-
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
354
|
-
# bounds)
|
355
|
-
# anchor = Geom::Point2d.new(1, 1)
|
356
|
-
# anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
|
357
|
-
# text = Layout::FormattedText.new("Test", anchor, anchor_type)
|
358
|
-
# label_from_bounds.text = text
|
359
|
-
#
|
360
|
-
# @param [Layout::FormattedText] new_text
|
361
|
-
#
|
362
|
-
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
363
|
-
# {Layout::Layer}
|
364
|
-
#
|
365
|
-
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
366
|
-
#
|
367
|
-
# @version LayOut 2018
|
368
|
-
def text=(new_text)
|
369
|
-
end
|
370
|
-
|
371
|
-
end
|
1
|
+
# Copyright:: Copyright 2020 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# This is an interface to a label entity. A {Layout::Label} consists of a
|
5
|
+
# {Layout::FormattedText} and the label leader {Layout::Path}. A
|
6
|
+
# {Layout::Label} may be connected to another {Layout::Entity} via a
|
7
|
+
# {Layout::ConnectionPoint}.
|
8
|
+
#
|
9
|
+
# @version LayOut 2018
|
10
|
+
class Layout::Label < Layout::Entity
|
11
|
+
|
12
|
+
# Constants
|
13
|
+
|
14
|
+
CONNECTION_TYPE_AUTO = nil # Stub value.
|
15
|
+
CONNECTION_TYPE_BOTTOM_LEFT = nil # Stub value.
|
16
|
+
CONNECTION_TYPE_BOTTOM_RIGHT = nil # Stub value.
|
17
|
+
CONNECTION_TYPE_CENTER_LEFT = nil # Stub value.
|
18
|
+
CONNECTION_TYPE_CENTER_RIGHT = nil # Stub value.
|
19
|
+
CONNECTION_TYPE_NONE = nil # Stub value.
|
20
|
+
CONNECTION_TYPE_REVERSE_AUTO = nil # Stub value.
|
21
|
+
CONNECTION_TYPE_TOP_LEFT = nil # Stub value.
|
22
|
+
CONNECTION_TYPE_TOP_RIGHT = nil # Stub value.
|
23
|
+
|
24
|
+
LEADER_LINE_TYPE_BEZIER = nil # Stub value.
|
25
|
+
LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
|
26
|
+
LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
|
27
|
+
LEADER_LINE_TYPE_UNKNOWN = nil # Stub value.
|
28
|
+
|
29
|
+
# Instance Methods
|
30
|
+
|
31
|
+
# The {#connect} method connects the {Layout::Label} to the given
|
32
|
+
# {Layout::ConnectionPoint}. The leader line will be adjusted to point at the
|
33
|
+
# {Layout::ConnectionPoint}. The {Layout::Label} must be in the same
|
34
|
+
# {Layout::Document} as the {Layout::ConnectionPoint}. If both the
|
35
|
+
# {Layout::Label} and the {Layout::ConnectionPoint}'s {Layout::Entity} are on
|
36
|
+
# non-shared {Layout::Layer}s, they must be on the same {Layout::Page}.
|
37
|
+
#
|
38
|
+
# @example
|
39
|
+
# text = "A label"
|
40
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
41
|
+
# target_point = Geom::Point2d.new(1, 1)
|
42
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
43
|
+
# label = Layout::Label.new(text, leader_type, target_point, bounds)
|
44
|
+
# rect = Layout::Rectangle.new([4, 4, 4, 4])
|
45
|
+
#
|
46
|
+
# doc = Layout::Document.new
|
47
|
+
# doc.add_entity(label, doc.layers.first, doc.pages.first)
|
48
|
+
# doc.add_entity(rect, doc.layers.first, doc.pages.first)
|
49
|
+
#
|
50
|
+
# point = Geom::Point2d.new(4, 4)
|
51
|
+
# # Create a Connection Point to a LayOut Entity in the Document
|
52
|
+
# cp = Layout::ConnectionPoint.new(rect, point)
|
53
|
+
# label.connect(cp)
|
54
|
+
#
|
55
|
+
# @param [Layout::ConnectionPoint] connection_point
|
56
|
+
#
|
57
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
58
|
+
# {Layout::Layer}
|
59
|
+
#
|
60
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
61
|
+
#
|
62
|
+
# @raise [ArgumentError] if the {Layout::Label} is not in the same
|
63
|
+
# {Layout::Document} as the {Layout::ConnectionPoint}
|
64
|
+
#
|
65
|
+
# @raise [ArgumentError] if both the {Layout::Label} and the
|
66
|
+
# {Layout::ConnectionPoint} are on non-shared {Layout::Layers}, but are not
|
67
|
+
# on the same {Layout::Page}.
|
68
|
+
#
|
69
|
+
# @version LayOut 2018
|
70
|
+
def connect(connection_point)
|
71
|
+
end
|
72
|
+
|
73
|
+
# The {#connection_type} method returns the type of the text connection for the
|
74
|
+
# {Layout::Label}.
|
75
|
+
#
|
76
|
+
# The leader line type can be one of the following values:
|
77
|
+
# [+Layout::Label::CONNECTION_TYPE_NONE+]
|
78
|
+
# [+Layout::Label::CONNECTION_TYPE_AUTO+]
|
79
|
+
# [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
|
80
|
+
# [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
|
81
|
+
# [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
|
82
|
+
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
|
83
|
+
# [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
|
84
|
+
# [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
|
85
|
+
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
|
86
|
+
#
|
87
|
+
# @example
|
88
|
+
# text = "A label"
|
89
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
90
|
+
# target_point = Geom::Point2d.new(1, 1)
|
91
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
92
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
93
|
+
# bounds)
|
94
|
+
# text_connection_type = label_from_bounds.connection_type
|
95
|
+
#
|
96
|
+
# @return [Integer]
|
97
|
+
#
|
98
|
+
# @version LayOut 2018
|
99
|
+
def connection_type
|
100
|
+
end
|
101
|
+
|
102
|
+
# The {#connection_type=} method sets the type of the text connection for the
|
103
|
+
# {Layout::Label}.
|
104
|
+
#
|
105
|
+
# The leader line type can be one of the following values:
|
106
|
+
# [+Layout::Label::CONNECTION_TYPE_NONE+]
|
107
|
+
# [+Layout::Label::CONNECTION_TYPE_AUTO+]
|
108
|
+
# [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
|
109
|
+
# [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
|
110
|
+
# [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
|
111
|
+
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
|
112
|
+
# [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
|
113
|
+
# [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
|
114
|
+
# [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
|
115
|
+
#
|
116
|
+
# @example
|
117
|
+
# text = "A label"
|
118
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
119
|
+
# target_point = Geom::Point2d.new(1, 1)
|
120
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
121
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
122
|
+
# bounds)
|
123
|
+
# label_from_bounds.connection_type = Layout::Label::CONNECTION_TYPE_TOP_LEFT
|
124
|
+
#
|
125
|
+
# @param [Integer] connection_type
|
126
|
+
#
|
127
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
128
|
+
# {Layout::Layer}
|
129
|
+
#
|
130
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
131
|
+
#
|
132
|
+
# @raise [ArgumentError] if the connection_type is not a valid text connection
|
133
|
+
# type
|
134
|
+
#
|
135
|
+
# @version LayOut 2018
|
136
|
+
def connection_type=(connection_type)
|
137
|
+
end
|
138
|
+
|
139
|
+
# The {#disconnect} method disconnects the {Layout::Label} from its
|
140
|
+
# {Layout::ConnectionPoint}. The leader line will not be adjusted by
|
141
|
+
# disconnecting from a {Layout::ConnectionPoint}.
|
142
|
+
#
|
143
|
+
# @example
|
144
|
+
# doc = Layout::Document.open("C:/path/to/document.layout")
|
145
|
+
# label = doc.pages.first.entities.first
|
146
|
+
# label.disconnect
|
147
|
+
#
|
148
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
149
|
+
# {Layout::Layer}
|
150
|
+
#
|
151
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
152
|
+
#
|
153
|
+
# @version LayOut 2018
|
154
|
+
def disconnect
|
155
|
+
end
|
156
|
+
|
157
|
+
# The {#entities} method returns the {Layout::Entities} that represent the
|
158
|
+
# {Layout::Label} in its exploded form.
|
159
|
+
#
|
160
|
+
# @example
|
161
|
+
# text = "A label"
|
162
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
163
|
+
# target_point = Geom::Point2d.new(1, 1)
|
164
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
165
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
166
|
+
# bounds)
|
167
|
+
# entities = label_from_bounds.entities
|
168
|
+
#
|
169
|
+
# @overload entities
|
170
|
+
#
|
171
|
+
# @return [Layout::Entities]
|
172
|
+
#
|
173
|
+
# @overload entities(page)
|
174
|
+
#
|
175
|
+
# @param [Layout::Page] page The {Layout::Page} to use to convert an
|
176
|
+
# auto text tag to display text
|
177
|
+
# @return [Layout::Entities]
|
178
|
+
#
|
179
|
+
# @raise [ArgumentError] if page does not belong to the same document as the
|
180
|
+
# [Layout::Label]
|
181
|
+
#
|
182
|
+
# @version LayOut 2018
|
183
|
+
def entities(*args)
|
184
|
+
end
|
185
|
+
|
186
|
+
# The {#initialize} method creates a new disconnected {Layout::Label}.
|
187
|
+
#
|
188
|
+
# @example
|
189
|
+
# text = "A label"
|
190
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
191
|
+
# target_point = Geom::Point2d.new(1, 1)
|
192
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
193
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
194
|
+
# bounds)
|
195
|
+
# anchor_point = Geom::Point2d.new(2, 2)
|
196
|
+
# anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_RIGHT
|
197
|
+
# label_from_point = Layout::Label.new(text, leader_type, target_point,
|
198
|
+
# anchor_point, anchor_type)
|
199
|
+
#
|
200
|
+
# @overload initialize(text, leader_type, target_point, bounds)
|
201
|
+
#
|
202
|
+
# @param [String] text The label text
|
203
|
+
# @param [Integer] leader_type The leader line type
|
204
|
+
# @param [Geom::Point2d] target_point Where the label leader should point to
|
205
|
+
# @param [Geom::Bounds2d] bounds
|
206
|
+
# @return [Layout::Label]
|
207
|
+
#
|
208
|
+
# @overload initialize(text, leader_type, target_point, anchor_point,
|
209
|
+
#
|
210
|
+
# anchor_type)
|
211
|
+
# @param [String] text The label text
|
212
|
+
# @param [Integer] leader_type The leader line type
|
213
|
+
# @param [Geom::Point2d] target_point Where the label leader should point to
|
214
|
+
# @param [Geom::Point2d] anchor_point The anchor point for the label text's
|
215
|
+
# position.
|
216
|
+
# @param [Integer] anchor_type Defines which point of the label text is set
|
217
|
+
# by anchor_point.
|
218
|
+
# @return [Layout::Label]
|
219
|
+
#
|
220
|
+
# @raise [ArgumentError] if anchor_type is not a valid anchor type
|
221
|
+
#
|
222
|
+
# @raise [ArgumentError] if leader_type is not a valid leader line type
|
223
|
+
#
|
224
|
+
# @raise [ArgumentError] if bounds is zero size
|
225
|
+
#
|
226
|
+
# @raise [ArgumentError] if plain_text is an empty string
|
227
|
+
#
|
228
|
+
# @version LayOut 2018
|
229
|
+
def initialize(*args)
|
230
|
+
end
|
231
|
+
|
232
|
+
# The {#leader_line} method returns a copy of the leader line.
|
233
|
+
#
|
234
|
+
# @example
|
235
|
+
# text = "A label"
|
236
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
237
|
+
# target_point = Geom::Point2d.new(1, 1)
|
238
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
239
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
240
|
+
# bounds)
|
241
|
+
# leader = label_from_bounds.leader_line
|
242
|
+
#
|
243
|
+
# @return [Layout::Path]
|
244
|
+
#
|
245
|
+
# @version LayOut 2018
|
246
|
+
def leader_line
|
247
|
+
end
|
248
|
+
|
249
|
+
# The {#leader_line=} method sets the leader line.
|
250
|
+
#
|
251
|
+
# @example
|
252
|
+
# text = "A label"
|
253
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
254
|
+
# target_point = Geom::Point2d.new(1, 1)
|
255
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
256
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
257
|
+
# bounds)
|
258
|
+
# path = Layout::Path.new(Geom::Point2d.new(1, 2), Geom::Point2d.new(2, 3))
|
259
|
+
# label_from_bounds.leader_line = path
|
260
|
+
#
|
261
|
+
# @param [Layout::Path] leader_path
|
262
|
+
#
|
263
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
264
|
+
# {Layout::Layer}
|
265
|
+
#
|
266
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
267
|
+
#
|
268
|
+
# @version LayOut 2018
|
269
|
+
def leader_line=(leader_path)
|
270
|
+
end
|
271
|
+
|
272
|
+
# The {#leader_line_type} method returns the type of the leader line for the
|
273
|
+
# {Layout::Label}.
|
274
|
+
#
|
275
|
+
# The leader line type can be one of the following values:
|
276
|
+
# [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
|
277
|
+
# [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
|
278
|
+
# [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
|
279
|
+
# [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
|
280
|
+
#
|
281
|
+
# @example
|
282
|
+
# text = "A label"
|
283
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
284
|
+
# target_point = Geom::Point2d.new(1, 1)
|
285
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
286
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
287
|
+
# bounds)
|
288
|
+
# leader_type = label_from_bounds.leader_line_type
|
289
|
+
#
|
290
|
+
# @return [Integer]
|
291
|
+
#
|
292
|
+
# @version LayOut 2018
|
293
|
+
def leader_line_type
|
294
|
+
end
|
295
|
+
|
296
|
+
# The {#leader_line_type=} method sets the type of the leader line for the
|
297
|
+
# {Layout::Label}.
|
298
|
+
#
|
299
|
+
# The leader line type can be one of the following values:
|
300
|
+
# [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
|
301
|
+
# [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
|
302
|
+
# [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
|
303
|
+
# [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
|
304
|
+
#
|
305
|
+
# @example
|
306
|
+
# text = "A label"
|
307
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
308
|
+
# target_point = Geom::Point2d.new(1, 1)
|
309
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
310
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
311
|
+
# bounds)
|
312
|
+
# label_from_bounds.leader_line_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
313
|
+
#
|
314
|
+
# @param [Integer] leader_type
|
315
|
+
#
|
316
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
317
|
+
# {Layout::Layer}
|
318
|
+
#
|
319
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
320
|
+
#
|
321
|
+
# @raise [ArgumentError] if leader_type is
|
322
|
+
# +Layout::Label::LEADER_LINE_TYPE_UNKNOWN+ or not a valid leader line type
|
323
|
+
#
|
324
|
+
# @version LayOut 2018
|
325
|
+
def leader_line_type=(leader_type)
|
326
|
+
end
|
327
|
+
|
328
|
+
# The {#text} method returns a copy of the {Layout::FormattedText} of the
|
329
|
+
# {Layout::Label}.
|
330
|
+
#
|
331
|
+
# @example
|
332
|
+
# text = "A label"
|
333
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
334
|
+
# target_point = Geom::Point2d.new(1, 1)
|
335
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
336
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
337
|
+
# bounds)
|
338
|
+
# text = label_from_bounds.text
|
339
|
+
#
|
340
|
+
# @return [Layout::FormattedText]
|
341
|
+
#
|
342
|
+
# @version LayOut 2018
|
343
|
+
def text
|
344
|
+
end
|
345
|
+
|
346
|
+
# The {#text=} method sets the {Layout::FormattedText} of the {Layout::Label}.
|
347
|
+
#
|
348
|
+
# @example
|
349
|
+
# text = "A label"
|
350
|
+
# leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
|
351
|
+
# target_point = Geom::Point2d.new(1, 1)
|
352
|
+
# bounds = Geom::Bounds2d.new(2, 1, 1, 1)
|
353
|
+
# label_from_bounds = Layout::Label.new(text, leader_type, target_point,
|
354
|
+
# bounds)
|
355
|
+
# anchor = Geom::Point2d.new(1, 1)
|
356
|
+
# anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
|
357
|
+
# text = Layout::FormattedText.new("Test", anchor, anchor_type)
|
358
|
+
# label_from_bounds.text = text
|
359
|
+
#
|
360
|
+
# @param [Layout::FormattedText] new_text
|
361
|
+
#
|
362
|
+
# @raise [LockedLayerError] if the {Layout::Label} is on a locked
|
363
|
+
# {Layout::Layer}
|
364
|
+
#
|
365
|
+
# @raise [LockedEntityError] if the {Layout::Label} is locked
|
366
|
+
#
|
367
|
+
# @version LayOut 2018
|
368
|
+
def text=(new_text)
|
369
|
+
end
|
370
|
+
|
371
|
+
end
|