scriptup 0.0.0

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.
Files changed (241) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +11 -0
  3. data/README.md +5 -0
  4. data/ext/attribute_dictionaries.c +45 -0
  5. data/ext/attribute_dictionaries.h +3 -0
  6. data/ext/attribute_dictionary.c +156 -0
  7. data/ext/attribute_dictionary.h +3 -0
  8. data/ext/behavior.c +10 -0
  9. data/ext/behavior.h +3 -0
  10. data/ext/color.c +211 -0
  11. data/ext/color.h +3 -0
  12. data/ext/component_definition.c +188 -0
  13. data/ext/component_definition.h +3 -0
  14. data/ext/component_instance.c +10 -0
  15. data/ext/component_instance.h +3 -0
  16. data/ext/definition_list.c +145 -0
  17. data/ext/definition_list.h +3 -0
  18. data/ext/drawing_element.c +10 -0
  19. data/ext/drawing_element.h +3 -0
  20. data/ext/entities.c +11 -0
  21. data/ext/entities.h +3 -0
  22. data/ext/entity.c +253 -0
  23. data/ext/entity.h +3 -0
  24. data/ext/extconf.rb +38 -0
  25. data/ext/material.c +242 -0
  26. data/ext/material.h +3 -0
  27. data/ext/materials.c +80 -0
  28. data/ext/materials.h +3 -0
  29. data/ext/model.c +42 -0
  30. data/ext/model.h +3 -0
  31. data/ext/sketchup.c +89 -0
  32. data/ext/sketchup.h +4 -0
  33. data/ext/texture.c +9 -0
  34. data/ext/texture.h +3 -0
  35. data/ext/typed_value.c +84 -0
  36. data/ext/typed_value.h +5 -0
  37. data/ext/utils.h +80 -0
  38. data/lib/sketchup.rb +12 -0
  39. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/application/application.h +36 -0
  40. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/application/model.h +59 -0
  41. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/application/overlay.h +248 -0
  42. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/application/ruby_api.h +118 -0
  43. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/color.h +107 -0
  44. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/common.h +178 -0
  45. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/defs.h +19 -0
  46. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/extension_license.h +62 -0
  47. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/bounding_box.h +34 -0
  48. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/plane3d.h +153 -0
  49. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/point2d.h +96 -0
  50. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/point3d.h +98 -0
  51. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/ray3d.h +64 -0
  52. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/transformation.h +321 -0
  53. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/transformation2d.h +163 -0
  54. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/vector2d.h +235 -0
  55. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry/vector3d.h +285 -0
  56. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/geometry.h +152 -0
  57. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/import_export/modelexporterplugin.h +165 -0
  58. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/import_export/modelimporterplugin.h +183 -0
  59. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/import_export/pluginprogresscallback.h +84 -0
  60. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/initialize.h +43 -0
  61. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/length_formatter.h +424 -0
  62. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/arccurve.h +244 -0
  63. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/arrow_type.h +17 -0
  64. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/attribute_dictionary.h +161 -0
  65. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/axes.h +242 -0
  66. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/camera.h +398 -0
  67. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/classification_attribute.h +89 -0
  68. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/classification_info.h +125 -0
  69. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/classifications.h +86 -0
  70. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/component_definition.h +588 -0
  71. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/component_instance.h +344 -0
  72. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/curve.h +143 -0
  73. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/defs.h +142 -0
  74. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dimension.h +222 -0
  75. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dimension_linear.h +421 -0
  76. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dimension_radial.h +194 -0
  77. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dimension_style.h +253 -0
  78. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/drawing_element.h +198 -0
  79. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dynamic_component_attribute.h +92 -0
  80. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/dynamic_component_info.h +70 -0
  81. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/edge.h +271 -0
  82. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/edge_use.h +214 -0
  83. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/entities.h +834 -0
  84. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/entity.h +186 -0
  85. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/entity_list.h +80 -0
  86. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/entity_list_iterator.h +90 -0
  87. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/face.h +686 -0
  88. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/font.h +138 -0
  89. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/geometry.h +20 -0
  90. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/geometry_input.h +685 -0
  91. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/group.h +244 -0
  92. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/guide_line.h +155 -0
  93. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/guide_point.h +153 -0
  94. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/image.h +288 -0
  95. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/image_rep.h +275 -0
  96. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/instancepath.h +266 -0
  97. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/layer.h +265 -0
  98. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/layer_folder.h +301 -0
  99. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/line_style.h +211 -0
  100. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/line_styles.h +81 -0
  101. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/location.h +65 -0
  102. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/loop.h +182 -0
  103. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/material.h +390 -0
  104. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/mesh_helper.h +187 -0
  105. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/model.h +1663 -0
  106. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/model_version.h +49 -0
  107. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/opening.h +72 -0
  108. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/options_manager.h +79 -0
  109. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/options_provider.h +166 -0
  110. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/polyline3d.h +140 -0
  111. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/rendering_options.h +179 -0
  112. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/scene.h +836 -0
  113. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/schema.h +56 -0
  114. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/schema_type.h +26 -0
  115. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/section_plane.h +212 -0
  116. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/selection.h +156 -0
  117. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/shadow_info.h +147 -0
  118. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/skp.h +45 -0
  119. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/style.h +303 -0
  120. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/styles.h +190 -0
  121. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/text.h +384 -0
  122. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/texture.h +358 -0
  123. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/texture_writer.h +280 -0
  124. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/typed_value.h +390 -0
  125. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/uv_helper.h +79 -0
  126. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/model/vertex.h +154 -0
  127. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/sketchup.h +122 -0
  128. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/sketchup_info.h +65 -0
  129. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/slapi.h +16 -0
  130. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/transformation.h +16 -0
  131. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/unicodestring.h +239 -0
  132. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Headers/utils/math_helpers.h +124 -0
  133. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonGeometry.dylib +0 -0
  134. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonGeoutils.dylib +0 -0
  135. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonImage.dylib +0 -0
  136. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonPreferences.dylib +0 -0
  137. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonUnits.dylib +0 -0
  138. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonUtils.dylib +0 -0
  139. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Libraries/libCommonZip.dylib +0 -0
  140. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/Resources/Info.plist +50 -0
  141. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/SketchUpAPI +0 -0
  142. data/sketchup-sdk-mac/SketchUpAPI.framework/Versions/A/_CodeSignature/CodeResources +835 -0
  143. data/sketchup-sdk-win/binaries/sketchup/x64/SketchUpAPI.dll +0 -0
  144. data/sketchup-sdk-win/binaries/sketchup/x64/SketchUpAPI.lib +0 -0
  145. data/sketchup-sdk-win/binaries/sketchup/x64/SketchUpCommonPreferences.dll +0 -0
  146. data/sketchup-sdk-win/binaries/sketchup/x64/sketchup.lib +0 -0
  147. data/sketchup-sdk-win/headers/SketchUpAPI/application/application.h +36 -0
  148. data/sketchup-sdk-win/headers/SketchUpAPI/application/model.h +59 -0
  149. data/sketchup-sdk-win/headers/SketchUpAPI/application/overlay.h +248 -0
  150. data/sketchup-sdk-win/headers/SketchUpAPI/application/ruby_api.h +118 -0
  151. data/sketchup-sdk-win/headers/SketchUpAPI/color.h +107 -0
  152. data/sketchup-sdk-win/headers/SketchUpAPI/common.h +178 -0
  153. data/sketchup-sdk-win/headers/SketchUpAPI/defs.h +19 -0
  154. data/sketchup-sdk-win/headers/SketchUpAPI/extension_license.h +62 -0
  155. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/bounding_box.h +34 -0
  156. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/plane3d.h +153 -0
  157. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/point2d.h +96 -0
  158. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/point3d.h +98 -0
  159. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/ray3d.h +64 -0
  160. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/transformation.h +321 -0
  161. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/transformation2d.h +163 -0
  162. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/vector2d.h +235 -0
  163. data/sketchup-sdk-win/headers/SketchUpAPI/geometry/vector3d.h +285 -0
  164. data/sketchup-sdk-win/headers/SketchUpAPI/geometry.h +152 -0
  165. data/sketchup-sdk-win/headers/SketchUpAPI/import_export/modelexporterplugin.h +165 -0
  166. data/sketchup-sdk-win/headers/SketchUpAPI/import_export/modelimporterplugin.h +183 -0
  167. data/sketchup-sdk-win/headers/SketchUpAPI/import_export/pluginprogresscallback.h +84 -0
  168. data/sketchup-sdk-win/headers/SketchUpAPI/initialize.h +43 -0
  169. data/sketchup-sdk-win/headers/SketchUpAPI/length_formatter.h +424 -0
  170. data/sketchup-sdk-win/headers/SketchUpAPI/model/arccurve.h +244 -0
  171. data/sketchup-sdk-win/headers/SketchUpAPI/model/arrow_type.h +17 -0
  172. data/sketchup-sdk-win/headers/SketchUpAPI/model/attribute_dictionary.h +161 -0
  173. data/sketchup-sdk-win/headers/SketchUpAPI/model/axes.h +242 -0
  174. data/sketchup-sdk-win/headers/SketchUpAPI/model/camera.h +398 -0
  175. data/sketchup-sdk-win/headers/SketchUpAPI/model/classification_attribute.h +89 -0
  176. data/sketchup-sdk-win/headers/SketchUpAPI/model/classification_info.h +125 -0
  177. data/sketchup-sdk-win/headers/SketchUpAPI/model/classifications.h +86 -0
  178. data/sketchup-sdk-win/headers/SketchUpAPI/model/component_definition.h +588 -0
  179. data/sketchup-sdk-win/headers/SketchUpAPI/model/component_instance.h +344 -0
  180. data/sketchup-sdk-win/headers/SketchUpAPI/model/curve.h +143 -0
  181. data/sketchup-sdk-win/headers/SketchUpAPI/model/defs.h +142 -0
  182. data/sketchup-sdk-win/headers/SketchUpAPI/model/dimension.h +222 -0
  183. data/sketchup-sdk-win/headers/SketchUpAPI/model/dimension_linear.h +421 -0
  184. data/sketchup-sdk-win/headers/SketchUpAPI/model/dimension_radial.h +194 -0
  185. data/sketchup-sdk-win/headers/SketchUpAPI/model/dimension_style.h +253 -0
  186. data/sketchup-sdk-win/headers/SketchUpAPI/model/drawing_element.h +198 -0
  187. data/sketchup-sdk-win/headers/SketchUpAPI/model/dynamic_component_attribute.h +92 -0
  188. data/sketchup-sdk-win/headers/SketchUpAPI/model/dynamic_component_info.h +70 -0
  189. data/sketchup-sdk-win/headers/SketchUpAPI/model/edge.h +271 -0
  190. data/sketchup-sdk-win/headers/SketchUpAPI/model/edge_use.h +214 -0
  191. data/sketchup-sdk-win/headers/SketchUpAPI/model/entities.h +834 -0
  192. data/sketchup-sdk-win/headers/SketchUpAPI/model/entity.h +186 -0
  193. data/sketchup-sdk-win/headers/SketchUpAPI/model/entity_list.h +80 -0
  194. data/sketchup-sdk-win/headers/SketchUpAPI/model/entity_list_iterator.h +90 -0
  195. data/sketchup-sdk-win/headers/SketchUpAPI/model/face.h +686 -0
  196. data/sketchup-sdk-win/headers/SketchUpAPI/model/font.h +138 -0
  197. data/sketchup-sdk-win/headers/SketchUpAPI/model/geometry.h +20 -0
  198. data/sketchup-sdk-win/headers/SketchUpAPI/model/geometry_input.h +685 -0
  199. data/sketchup-sdk-win/headers/SketchUpAPI/model/group.h +244 -0
  200. data/sketchup-sdk-win/headers/SketchUpAPI/model/guide_line.h +155 -0
  201. data/sketchup-sdk-win/headers/SketchUpAPI/model/guide_point.h +153 -0
  202. data/sketchup-sdk-win/headers/SketchUpAPI/model/image.h +288 -0
  203. data/sketchup-sdk-win/headers/SketchUpAPI/model/image_rep.h +275 -0
  204. data/sketchup-sdk-win/headers/SketchUpAPI/model/instancepath.h +266 -0
  205. data/sketchup-sdk-win/headers/SketchUpAPI/model/layer.h +265 -0
  206. data/sketchup-sdk-win/headers/SketchUpAPI/model/layer_folder.h +301 -0
  207. data/sketchup-sdk-win/headers/SketchUpAPI/model/line_style.h +211 -0
  208. data/sketchup-sdk-win/headers/SketchUpAPI/model/line_styles.h +81 -0
  209. data/sketchup-sdk-win/headers/SketchUpAPI/model/location.h +65 -0
  210. data/sketchup-sdk-win/headers/SketchUpAPI/model/loop.h +182 -0
  211. data/sketchup-sdk-win/headers/SketchUpAPI/model/material.h +390 -0
  212. data/sketchup-sdk-win/headers/SketchUpAPI/model/mesh_helper.h +187 -0
  213. data/sketchup-sdk-win/headers/SketchUpAPI/model/model.h +1663 -0
  214. data/sketchup-sdk-win/headers/SketchUpAPI/model/model_version.h +49 -0
  215. data/sketchup-sdk-win/headers/SketchUpAPI/model/opening.h +72 -0
  216. data/sketchup-sdk-win/headers/SketchUpAPI/model/options_manager.h +79 -0
  217. data/sketchup-sdk-win/headers/SketchUpAPI/model/options_provider.h +166 -0
  218. data/sketchup-sdk-win/headers/SketchUpAPI/model/polyline3d.h +140 -0
  219. data/sketchup-sdk-win/headers/SketchUpAPI/model/rendering_options.h +179 -0
  220. data/sketchup-sdk-win/headers/SketchUpAPI/model/scene.h +836 -0
  221. data/sketchup-sdk-win/headers/SketchUpAPI/model/schema.h +56 -0
  222. data/sketchup-sdk-win/headers/SketchUpAPI/model/schema_type.h +26 -0
  223. data/sketchup-sdk-win/headers/SketchUpAPI/model/section_plane.h +212 -0
  224. data/sketchup-sdk-win/headers/SketchUpAPI/model/selection.h +156 -0
  225. data/sketchup-sdk-win/headers/SketchUpAPI/model/shadow_info.h +147 -0
  226. data/sketchup-sdk-win/headers/SketchUpAPI/model/skp.h +45 -0
  227. data/sketchup-sdk-win/headers/SketchUpAPI/model/style.h +303 -0
  228. data/sketchup-sdk-win/headers/SketchUpAPI/model/styles.h +190 -0
  229. data/sketchup-sdk-win/headers/SketchUpAPI/model/text.h +384 -0
  230. data/sketchup-sdk-win/headers/SketchUpAPI/model/texture.h +358 -0
  231. data/sketchup-sdk-win/headers/SketchUpAPI/model/texture_writer.h +280 -0
  232. data/sketchup-sdk-win/headers/SketchUpAPI/model/typed_value.h +390 -0
  233. data/sketchup-sdk-win/headers/SketchUpAPI/model/uv_helper.h +79 -0
  234. data/sketchup-sdk-win/headers/SketchUpAPI/model/vertex.h +154 -0
  235. data/sketchup-sdk-win/headers/SketchUpAPI/sketchup.h +122 -0
  236. data/sketchup-sdk-win/headers/SketchUpAPI/sketchup_info.h +65 -0
  237. data/sketchup-sdk-win/headers/SketchUpAPI/slapi.h +16 -0
  238. data/sketchup-sdk-win/headers/SketchUpAPI/transformation.h +16 -0
  239. data/sketchup-sdk-win/headers/SketchUpAPI/unicodestring.h +239 -0
  240. data/sketchup-sdk-win/headers/SketchUpAPI/utils/math_helpers.h +124 -0
  241. metadata +313 -0
@@ -0,0 +1,266 @@
1
+ // Copyright 2016 Trimble Inc. All Rights Reserved.
2
+
3
+ /**
4
+ * @file
5
+ * @brief Interfaces for SUInstancePathRef.
6
+ */
7
+ #ifndef SKETCHUP_MODEL_INSTANCEPATH_H_
8
+ #define SKETCHUP_MODEL_INSTANCEPATH_H_
9
+
10
+ #include <SketchUpAPI/common.h>
11
+ #include <SketchUpAPI/transformation.h>
12
+ #include <SketchUpAPI/unicodestring.h>
13
+ #include <SketchUpAPI/model/defs.h>
14
+
15
+ #ifdef __cplusplus
16
+ extern "C" {
17
+ #endif
18
+
19
+ /**
20
+ @struct SUInstancePathRef
21
+ @brief An instance path type that provides a wrapping of a data structure
22
+ of component instances.
23
+ */
24
+
25
+ /**
26
+ @brief Creates an instance path object.
27
+ @param[out] instance_path The instance path object created.
28
+ @related SUInstancePathRef
29
+ @return
30
+ - \ref SU_ERROR_NONE on success
31
+ - \ref SU_ERROR_NULL_POINTER_INPUT if instance_path is NULL
32
+ - \ref SU_ERROR_OVERWRITE_VALID if *instance_path refers to a valid object
33
+ */
34
+ SU_RESULT SUInstancePathCreate(SUInstancePathRef* instance_path);
35
+
36
+ /**
37
+ @brief Creates a copy of an instance path object.
38
+ @param[out] instance_path The copy of instance path object.
39
+ @param[in] source_path The instance path to be copied.
40
+ @related SUInstancePathRef
41
+ @return
42
+ - \ref SU_ERROR_NONE on success
43
+ - \ref SU_ERROR_NULL_POINTER_INPUT if instance_path is NULL
44
+ - \ref SU_ERROR_INVALID_INPUT if source_path is not a valid object
45
+ - \ref SU_ERROR_OVERWRITE_VALID if *instance_path refers to a valid object
46
+ */
47
+ SU_RESULT SUInstancePathCreateCopy(SUInstancePathRef* instance_path, SUInstancePathRef source_path);
48
+
49
+ /**
50
+ @brief Releases an instance path object.
51
+ @param[in] instance_path The instance path being released.
52
+ @related SUInstancePathRef
53
+ @return
54
+ - \ref SU_ERROR_NONE on success
55
+ - \ref SU_ERROR_NULL_POINTER_INPUT if instance_path is NULL
56
+ */
57
+ SU_RESULT SUInstancePathRelease(SUInstancePathRef* instance_path);
58
+
59
+ /**
60
+ @brief Pushes a \ref SUComponentInstanceRef to an \ref SUInstancePathRef.
61
+ @param[in] instance_path The instance path object.
62
+ @param[in] component_instance The component instance object.
63
+ @related SUInstancePathRef
64
+ @return
65
+ - \ref SU_ERROR_NONE on success
66
+ - \ref SU_ERROR_INVALID_INPUT if instance_path or component_instance is not a
67
+ valid object
68
+ */
69
+ SU_RESULT SUInstancePathPushInstance(
70
+ SUInstancePathRef instance_path, SUComponentInstanceRef component_instance);
71
+
72
+ /**
73
+ @brief Pops the last \ref SUComponentInstanceRef from an \ref SUInstancePathRef.
74
+ @param[in] instance_path The instance path object.
75
+ @related SUInstancePathRef
76
+ @return
77
+ - \ref SU_ERROR_NONE on success
78
+ - \ref SU_ERROR_NULL_POINTER_INPUT if instance_path is NULL
79
+ */
80
+ SU_RESULT SUInstancePathPopInstance(SUInstancePathRef instance_path);
81
+
82
+ /**
83
+ @brief Sets a \ref SUEntityRef to an \ref SUInstancePathRef.
84
+ @param[in] instance_path The instance path object.
85
+ @note Since SketchUp 2023.1, API version 11.1 you can unset the leaf entity by passing an SU_INVALID
86
+ entity ref.
87
+ @param[in] entity The entity to be set as a leaf in instance path or SU_INVALID if the
88
+ leaf should be removed.
89
+ @related SUInstancePathRef
90
+ @return
91
+ - \ref SU_ERROR_NONE on success
92
+ - \ref SU_ERROR_NULL_POINTER_INPUT if instance_path is NULL
93
+ */
94
+ SU_RESULT SUInstancePathSetLeaf(SUInstancePathRef instance_path, SUEntityRef entity);
95
+
96
+ /**
97
+ @brief Gets a path depth for \ref SUInstancePathRef.
98
+ It only counts the component instances in the path, so the leaf node is
99
+ not counted.
100
+ @param[in] instance_path The instance path object.
101
+ @param[out] depth The depth of instance path object.
102
+ @related SUInstancePathRef
103
+ @return
104
+ - \ref SU_ERROR_NONE on success
105
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
106
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if depth is NULL
107
+ */
108
+ SU_RESULT SUInstancePathGetPathDepth(SUInstancePathRef instance_path, size_t* depth);
109
+
110
+ /**
111
+ @brief Gets the full path depth (including the leaf) for \ref SUInstancePathRef.
112
+ @param[in] instance_path The instance path object.
113
+ @param[out] full_depth The depth of instance path object including the leaf
114
+ (if it exists).
115
+ @related SUInstancePathRef
116
+ @return
117
+ - \ref SU_ERROR_NONE on success
118
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
119
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if full_depth is NULL
120
+ */
121
+ SU_RESULT SUInstancePathGetFullDepth(SUInstancePathRef instance_path, size_t* full_depth);
122
+
123
+ /**
124
+ @brief Gets the transform for \ref SUInstancePathRef.
125
+ @param[in] instance_path The instance path object.
126
+ @param[out] transform The transform from instance path.
127
+ @related SUInstancePathRef
128
+ @return
129
+ - \ref SU_ERROR_NONE on success
130
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
131
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if transform is NULL
132
+ */
133
+ SU_RESULT SUInstancePathGetTransform(
134
+ SUInstancePathRef instance_path, struct SUTransformation* transform);
135
+
136
+ /**
137
+ @brief Gets the transform up to depth level for \ref SUInstancePathRef.
138
+ @param[in] instance_path The instance path object.
139
+ @param[in] depth The depth for getting transforms up to.
140
+ @param[out] transform The transform from instance path.
141
+ @related SUInstancePathRef
142
+ @return
143
+ - \ref SU_ERROR_NONE on success
144
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
145
+ - \ref SU_ERROR_OUT_OF_RANGE if depth exceeds the depth of instance_path
146
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if transform is NULL
147
+ */
148
+ SU_RESULT SUInstancePathGetTransformAtDepth(
149
+ SUInstancePathRef instance_path, size_t depth, struct SUTransformation* transform);
150
+
151
+ /**
152
+ @brief Gets a component instance up to path depth level.
153
+ @param[in] instance_path The instance path object.
154
+ @param[in] depth The depth for getting drawing element up to.
155
+ @param[out] instance The component instance from instance path.
156
+ @related SUInstancePathRef
157
+ @return
158
+ - \ref SU_ERROR_NONE on success
159
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
160
+ - \ref SU_ERROR_OUT_OF_RANGE if depth exceeds the depth of instance_path
161
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if instance is NULL
162
+ */
163
+ SU_RESULT SUInstancePathGetInstanceAtDepth(
164
+ SUInstancePathRef instance_path, size_t depth, SUComponentInstanceRef* instance);
165
+
166
+ /**
167
+ @brief Gets a leaf from an instance path as an entity object.
168
+ @param[in] instance_path The instance path object.
169
+ @param[out] entity The leaf from an instance path.
170
+ @related SUInstancePathRef
171
+ @return
172
+ - The leaf from instance path on success
173
+ - \ref SU_ERROR_NONE on success
174
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
175
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if entity is NULL
176
+ */
177
+ SU_RESULT SUInstancePathGetLeafAsEntity(SUInstancePathRef instance_path, SUEntityRef* entity);
178
+
179
+ /**
180
+ @brief Gets a leaf from an entity path as a drawing element object.
181
+ @param[in] instance_path The instance path object.
182
+ @param[out] drawing_element The leaf from an instance path.
183
+ @related SUInstancePathRef
184
+ @return
185
+ - \ref SU_ERROR_NONE on success
186
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
187
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if entity is NULL
188
+ */
189
+ SU_RESULT SUInstancePathGetLeaf(
190
+ SUInstancePathRef instance_path, SUDrawingElementRef* drawing_element);
191
+
192
+ /**
193
+ @brief Validates an instance path.
194
+ @param[in] instance_path The instance path object.
195
+ @param[out] valid Whether the instance path is valid or not.
196
+ @related SUInstancePathRef
197
+ @return
198
+ - \ref SU_ERROR_NONE on success
199
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
200
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if valid is NULL
201
+ */
202
+ SU_RESULT SUInstancePathIsValid(SUInstancePathRef instance_path, bool* valid);
203
+
204
+ /**
205
+ @brief Checks if an instance path is empty.
206
+ @param[in] instance_path The instance path object.
207
+ @param[out] empty Whether the instance path is empty or not.
208
+ @related SUInstancePathRef
209
+ @return
210
+ - \ref SU_ERROR_NONE on success
211
+ - \ref SU_ERROR_INVALID_INPUT if instance_path_ref is not a valid object
212
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if empty is NULL
213
+ */
214
+ SU_RESULT SUInstancePathIsEmpty(SUInstancePathRef instance_path, bool* empty);
215
+
216
+ /**
217
+ @brief Checks if instance path contains a particular entity.
218
+ @param[in] instance_path The instance path object.
219
+ @param[in] entity The entity object.
220
+ @param[out] contains Whether the instance path contains the entity or not.
221
+ @related SUInstancePathRef
222
+ @return
223
+ - \ref SU_ERROR_NONE on success
224
+ - \ref SU_ERROR_INVALID_INPUT if instance_path_ref
225
+ or entity_ref is not a valid object
226
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if contains is NULL
227
+ */
228
+ SU_RESULT SUInstancePathContains(
229
+ SUInstancePathRef instance_path, SUEntityRef entity, bool* contains);
230
+ /**
231
+ @brief Retrieves the full persistent id for a given instance path.
232
+ @param[in] instance_path The instance path.
233
+ @param[out] pid The persistent id.
234
+ @related SUInstancePathRef
235
+ @return
236
+ - \ref SU_ERROR_NONE on success
237
+ - \ref SU_ERROR_UNSUPPORTED if persistent id functionality is unsupported
238
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
239
+ - \ref SU_ERROR_INVALID_OUTPUT if pid is not a valid object
240
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if pid is NULL
241
+ */
242
+ SU_RESULT SUInstancePathGetPersistentID(SUInstancePathRef instance_path, SUStringRef* pid);
243
+
244
+ /**
245
+ @brief Retrieves the persistent id of an entity up to depth level in a given
246
+ instance path.
247
+ @param[in] instance_path The instance path.
248
+ @param[in] depth The depth for getting persistent id up to.
249
+ @param[out] pid The persistent id.
250
+ @related SUInstancePathRef
251
+ @return
252
+ - \ref SU_ERROR_NONE on success
253
+ - \ref SU_ERROR_UNSUPPORTED if persistent id functionality is unsupported
254
+ - \ref SU_ERROR_INVALID_INPUT if instance_path is not a valid object
255
+ - \ref SU_ERROR_OUT_OF_RANGE if depth exceeds the depth of instance_path
256
+ - \ref SU_ERROR_INVALID_OUTPUT if pid is not a valid object
257
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if pid is NULL
258
+ */
259
+ SU_RESULT SUInstancePathGetPersistentIDAtDepth(
260
+ SUInstancePathRef instance_path, size_t depth, SUStringRef* pid);
261
+
262
+ #ifdef __cplusplus
263
+ } // extern "C"
264
+ #endif
265
+
266
+ #endif // SKETCHUP_MODEL_INSTANCEPATH_H_
@@ -0,0 +1,265 @@
1
+ // Copyright 2013-2019 Trimble, Inc. All Rights Reserved.
2
+
3
+ /**
4
+ * @file
5
+ * @brief Interfaces for SULayerRef.
6
+ */
7
+ #ifndef SKETCHUP_MODEL_LAYER_H_
8
+ #define SKETCHUP_MODEL_LAYER_H_
9
+
10
+ #include <SketchUpAPI/common.h>
11
+ #include <SketchUpAPI/unicodestring.h>
12
+ #include <SketchUpAPI/model/defs.h>
13
+
14
+ #ifdef __cplusplus
15
+ extern "C" {
16
+ #endif
17
+
18
+ /**
19
+ @struct SULayerRef
20
+ @extends SUEntityRef
21
+ @brief References a Tag object.
22
+ @note 'Layer' is a legacy term that is being used for consistency within the API.
23
+ */
24
+
25
+ /**
26
+ @enum SULayerVisibilityDefaultType
27
+ @brief Indicates whether to set the layer visible by default. Used for
28
+ \ref SULayerGetSceneBehavior() and \ref SULayerSetSceneBehavior().
29
+ */
30
+ enum SULayerVisibilityDefaultType {
31
+ SULayerVisibilityDefaultType_Visible = 0x0000,
32
+ SULayerVisibilityDefaultType_Hidden = 0x0001
33
+ };
34
+
35
+ /**
36
+ @enum SULayerVisibilityNewSceneType
37
+ @brief Indicates whether to set the layer visible on new scenes. Used for
38
+ \ref SULayerGetSceneBehavior() and \ref SULayerSetSceneBehavior().
39
+ */
40
+ enum SULayerVisibilityNewSceneType {
41
+ SULayerVisibilityNewSceneType_LayerDefault = 0x0000,
42
+ SULayerVisibilityNewSceneType_Visible = 0x0010,
43
+ SULayerVisibilityNewSceneType_Hidden = 0x0020
44
+ };
45
+
46
+ /**
47
+ @brief Converts from an \ref SULayerRef to an \ref SUEntityRef.
48
+ This is essentially an upcast operation.
49
+ @param[in] layer The given layer reference.
50
+ @related SULayerRef
51
+ @return
52
+ - The converted \ref SUEntityRef if layer is a valid layer
53
+ - If not, the returned reference will be invalid
54
+ */
55
+ SU_EXPORT SUEntityRef SULayerToEntity(SULayerRef layer);
56
+
57
+ /**
58
+ @brief Converts from an \ref SUEntityRef to an \ref SULayerRef.
59
+ This is essentially a downcast operation so the given
60
+ SUEntityRef must be convertible to an \ref SULayerRef.
61
+ @param[in] entity The given entity reference.
62
+ @related SULayerRef
63
+ @return
64
+ - The converted \ref SULayerRef if the downcast operation succeeds
65
+ - If not, the returned reference will be invalid
66
+ */
67
+ SU_EXPORT SULayerRef SULayerFromEntity(SUEntityRef entity);
68
+
69
+ /**
70
+ @brief Creates a new layer object.
71
+
72
+ Layers associated with a SketchUp model must not be explicitly deallocated.
73
+ Layers that are not associated with a SketchUp model must be deallocated with
74
+ \ref SULayerRelease().
75
+ @param[out] layer The layer object created.
76
+ @related SULayerRef
77
+ @return
78
+ - \ref SU_ERROR_NONE on success
79
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if layer is NULL
80
+ */
81
+ SU_RESULT SULayerCreate(SULayerRef* layer);
82
+
83
+ /**
84
+ @brief Deallocates a layer object.
85
+
86
+ The layer object to be deallocated must not be associated with a SketchUp model.
87
+ @param[in] layer The layer object.
88
+ @related SULayerRef
89
+ @return
90
+ - \ref SU_ERROR_NONE on success
91
+ - \ref SU_ERROR_INVALID_INPUT if layer points to an invalid object
92
+ - \ref SU_ERROR_NULL_POINTER_INPUT if layer is NULL
93
+ */
94
+ SU_RESULT SULayerRelease(SULayerRef* layer);
95
+
96
+ /**
97
+ @brief Retrieves the name of a layer object.
98
+ @param[in] layer The layer object.
99
+ @param[out] name The name retrieved.
100
+ @related SULayerRef
101
+ @return
102
+ - \ref SU_ERROR_NONE on success
103
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object
104
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if name is NULL
105
+ - \ref SU_ERROR_INVALID_OUTPUT if name does not point to a valid \ref
106
+ SUStringRef object
107
+ */
108
+ SU_RESULT SULayerGetName(SULayerRef layer, SUStringRef* name);
109
+
110
+ /**
111
+ @brief Retrieves the display name of a layer object.
112
+ @since SketchUp 2020.0, API version 8.0
113
+
114
+ The display name is the name you see in the product. In SketchUp 2020 the
115
+ display name for the default layer changed from "Layer0" to "Untagged".
116
+ For all other layers the name and display name are identical.
117
+
118
+ @param[in] layer The layer object.
119
+ @param[out] name The display name retrieved.
120
+ @related SULayerRef
121
+ @return
122
+ - \ref SU_ERROR_NONE on success
123
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object
124
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if name is NULL
125
+ - \ref SU_ERROR_INVALID_OUTPUT if name does not point to a valid \ref
126
+ SUStringRef object
127
+ */
128
+ SU_RESULT SULayerGetDisplayName(SULayerRef layer, SUStringRef* name);
129
+
130
+ /**
131
+ @brief Assigns the name of a layer object.
132
+ @param[in] layer The layer object.
133
+ @param[in] name The new name of the layer object. Assumed to be UTF-8 encoded.
134
+ @related SULayerRef
135
+ @return
136
+ - \ref SU_ERROR_NONE if layer is not a valid object
137
+ - \ref SU_ERROR_NULL_POINTER_INPUT if name is NULL
138
+ */
139
+ SU_RESULT SULayerSetName(SULayerRef layer, const char* name);
140
+
141
+ /**
142
+ @brief Retrieves the material object associated with a layer object.
143
+
144
+ The retrieved material object must not be deallocated by the caller since it is
145
+ owned by the layer object.
146
+ @param[in] layer The layer object.
147
+ @param[out] material The material object retrieved.
148
+ @related SULayerRef
149
+ @return
150
+ - \ref SU_ERROR_NONE on success
151
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object
152
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if material is NULL
153
+ */
154
+ SU_RESULT SULayerGetMaterial(SULayerRef layer, SUMaterialRef* material);
155
+
156
+ /**
157
+ @brief Retrieves the boolean flag indicating whether a layer object is visible.
158
+ @param[in] layer The layer object.
159
+ @param[out] visible The visibility flag retrieved.
160
+ @related SULayerRef
161
+ @return
162
+ - \ref SU_ERROR_NONE on success
163
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object
164
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if visibility is NULL
165
+ */
166
+ SU_RESULT SULayerGetVisibility(SULayerRef layer, bool* visible);
167
+
168
+ /**
169
+ @brief Sets the boolean flag indicating whether a layer object is visible.
170
+ @param[in] layer The layer object.
171
+ @param[in] visible The visibility flag to set.
172
+ @related SULayerRef
173
+ @return
174
+ - \ref SU_ERROR_NONE on success
175
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object.
176
+ */
177
+ SU_RESULT SULayerSetVisibility(SULayerRef layer, bool visible);
178
+
179
+ /**
180
+ @brief Get the line style of a layer.
181
+ @since SketchUp 2019, API 7.0
182
+ @param[in] layer The layer object.
183
+ @param[out] line_style The line style reference.
184
+ @related SULayerRef
185
+ @return
186
+ - \ref SU_ERROR_NONE on success
187
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object
188
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if line_style is NULL
189
+ - \ref SU_ERROR_NO_DATA if the layer has no custom line style.
190
+ */
191
+ SU_RESULT SULayerGetLineStyle(SULayerRef layer, SULineStyleRef* line_style);
192
+
193
+ /**
194
+ @brief Set the line style of a layer.
195
+ @since SketchUp 2019, API 7.0
196
+ @param[in] layer The layer object.
197
+ @param[in] line_style The line style to set.
198
+ @related SULayerRef
199
+ @return
200
+ - \ref SU_ERROR_NONE on success
201
+ - \ref SU_ERROR_INVALID_INPUT if layer or line_style is not a valid object.
202
+ */
203
+ SU_RESULT SULayerSetLineStyle(SULayerRef layer, SULineStyleRef line_style);
204
+
205
+ /**
206
+ @brief Clear the line style of a layer.
207
+ @since SketchUp 2019, API 7.0
208
+ @param[in] layer The layer object.
209
+ @related SULayerRef
210
+ @return
211
+ - \ref SU_ERROR_NONE on success
212
+ - \ref SU_ERROR_INVALID_INPUT if layer is not a valid object.
213
+ */
214
+ SU_RESULT SULayerClearLineStyle(SULayerRef layer);
215
+
216
+ /**
217
+ @brief Get the scene behavior on the layer.
218
+ @since SketchUp 2020.0, API 8.0
219
+ @param[in] layer The layer object.
220
+ @param[out] default_type The retrieved default scene behavior.
221
+ @param[out] new_scene_type The retrieved behavior for new scenes.
222
+ @related SULayerRef
223
+ @return
224
+ - \ref SU_ERROR_NONE on success
225
+ - \ref SU_ERROR_INVALID_INPUT if the layer is not a valid object
226
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if default_type or new_scene_type is NULL
227
+ */
228
+ SU_RESULT SULayerGetSceneBehavior(
229
+ SULayerRef layer, enum SULayerVisibilityDefaultType* default_type,
230
+ enum SULayerVisibilityNewSceneType* new_scene_type);
231
+
232
+ /**
233
+ @brief Set the scene behavior on the layer.
234
+ @since SketchUp 2020.0, API 8.0
235
+ @param[in] layer The layer object.
236
+ @param[in] default_type The default scene behavior.
237
+ @param[in] new_scene_type The behavior to set for new scenes.
238
+ @related SULayerRef
239
+ @return
240
+ - \ref SU_ERROR_NONE on success
241
+ - \ref SU_ERROR_INVALID_INPUT if the layer is not a valid object
242
+ */
243
+ SU_RESULT SULayerSetSceneBehavior(
244
+ SULayerRef layer, enum SULayerVisibilityDefaultType default_type,
245
+ enum SULayerVisibilityNewSceneType new_scene_type);
246
+
247
+ /**
248
+ @brief Gets the \ref SULayerFolderRef object that contains the given layer.
249
+ @since SketchUp 2020.2, API 8.2
250
+ @param[in] layer The layer object.
251
+ @param[out] layer_folder The retrieved layer folder object.
252
+ @related SULayerRef
253
+ @return
254
+ - \ref SU_ERROR_NONE on success
255
+ - \ref SU_ERROR_INVALID_INPUT if \p layer is not a valid object
256
+ - \ref SU_ERROR_NULL_POINTER_OUTPUT if \p layer_folder is NULL
257
+ - \ref SU_ERROR_NO_DATA if \p layer is not contained within a layer folder
258
+ */
259
+ SU_RESULT SULayerGetParentLayerFolder(SULayerRef layer, SULayerFolderRef* layer_folder);
260
+
261
+ #ifdef __cplusplus
262
+ } // extern "C"
263
+ #endif
264
+
265
+ #endif // SKETCHUP_MODEL_LAYER_H_