@sapui5/sap.ui.vk 1.138.0 → 1.139.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 (217) hide show
  1. package/package.json +1 -1
  2. package/src/sap/ui/vk/.library +9 -1
  3. package/src/sap/ui/vk/AnimationPlayback.js +1 -1
  4. package/src/sap/ui/vk/AnimationPlayer.js +1 -1
  5. package/src/sap/ui/vk/AnimationSequence.js +1 -1
  6. package/src/sap/ui/vk/AnimationTimeSlider.js +1 -1
  7. package/src/sap/ui/vk/AnimationTrack.js +1 -1
  8. package/src/sap/ui/vk/Annotation.js +1 -1
  9. package/src/sap/ui/vk/BaseNodeProxy.js +1 -1
  10. package/src/sap/ui/vk/Camera.js +1 -1
  11. package/src/sap/ui/vk/ContentConnector.js +149 -95
  12. package/src/sap/ui/vk/ContentManager.js +1 -1
  13. package/src/sap/ui/vk/ContentResource.js +26 -7
  14. package/src/sap/ui/vk/ContentType.js +41 -0
  15. package/src/sap/ui/vk/Core.js +1 -1
  16. package/src/sap/ui/vk/DownloadManager.js +1 -1
  17. package/src/sap/ui/vk/DrawerToolbar.js +46 -19
  18. package/src/sap/ui/vk/DvlException.js +1 -1
  19. package/src/sap/ui/vk/FlexibleControl.js +1 -1
  20. package/src/sap/ui/vk/FlexibleControlLayoutData.js +1 -1
  21. package/src/sap/ui/vk/Highlight.js +1 -1
  22. package/src/sap/ui/vk/ImageContentManager.js +1 -1
  23. package/src/sap/ui/vk/JointUtils.js +1 -1
  24. package/src/sap/ui/vk/LayerProxy.js +1 -1
  25. package/src/sap/ui/vk/Loco.js +1 -1
  26. package/src/sap/ui/vk/Material.js +1 -1
  27. package/src/sap/ui/vk/NativeViewport.js +1 -1
  28. package/src/sap/ui/vk/NodeHierarchy.js +1 -1
  29. package/src/sap/ui/vk/NodeProxy.js +1 -1
  30. package/src/sap/ui/vk/NodeUtils.js +1 -1
  31. package/src/sap/ui/vk/Notifications.js +1 -1
  32. package/src/sap/ui/vk/OrthographicCamera.js +1 -1
  33. package/src/sap/ui/vk/PerspectiveCamera.js +1 -1
  34. package/src/sap/ui/vk/ProgressIndicator.js +1 -1
  35. package/src/sap/ui/vk/RedlineCollaboration.js +1 -1
  36. package/src/sap/ui/vk/RedlineConversation.js +1 -1
  37. package/src/sap/ui/vk/RedlineDesign.js +1 -1
  38. package/src/sap/ui/vk/RedlineElement.js +1 -1
  39. package/src/sap/ui/vk/RedlineElementComment.js +1 -1
  40. package/src/sap/ui/vk/RedlineElementEllipse.js +1 -1
  41. package/src/sap/ui/vk/RedlineElementFreehand.js +1 -1
  42. package/src/sap/ui/vk/RedlineElementLine.js +1 -1
  43. package/src/sap/ui/vk/RedlineElementRectangle.js +1 -1
  44. package/src/sap/ui/vk/RedlineElementText.js +1 -1
  45. package/src/sap/ui/vk/RedlineSurface.js +1 -1
  46. package/src/sap/ui/vk/SafeArea.js +1 -1
  47. package/src/sap/ui/vk/Scene.js +5 -1
  48. package/src/sap/ui/vk/SceneTree.js +20 -3
  49. package/src/sap/ui/vk/StepNavigation.js +1 -1
  50. package/src/sap/ui/vk/Texture.js +1 -1
  51. package/src/sap/ui/vk/ToggleMenuButton.js +1 -1
  52. package/src/sap/ui/vk/ToggleMenuItem.js +1 -1
  53. package/src/sap/ui/vk/Toolbar.js +1 -1
  54. package/src/sap/ui/vk/View.js +1 -1
  55. package/src/sap/ui/vk/ViewGallery.js +1 -1
  56. package/src/sap/ui/vk/ViewGalleryThumbnail.js +1 -1
  57. package/src/sap/ui/vk/ViewGroup.js +1 -1
  58. package/src/sap/ui/vk/ViewManager.js +1 -1
  59. package/src/sap/ui/vk/ViewStateManager.js +3 -10
  60. package/src/sap/ui/vk/ViewStateManagerBase.js +2 -2
  61. package/src/sap/ui/vk/Viewer.js +2 -2
  62. package/src/sap/ui/vk/Viewport.js +1 -1
  63. package/src/sap/ui/vk/ViewportBase.js +24 -70
  64. package/src/sap/ui/vk/dvl/BaseNodeProxy.js +1 -1
  65. package/src/sap/ui/vk/dvl/ContentManager.js +1 -1
  66. package/src/sap/ui/vk/dvl/GraphicsCore.js +1 -1
  67. package/src/sap/ui/vk/dvl/LayerProxy.js +1 -1
  68. package/src/sap/ui/vk/dvl/NodeHierarchy.js +1 -1
  69. package/src/sap/ui/vk/dvl/NodeProxy.js +1 -1
  70. package/src/sap/ui/vk/dvl/Scene.js +1 -1
  71. package/src/sap/ui/vk/dvl/ViewStateManager.js +1 -1
  72. package/src/sap/ui/vk/dvl/Viewport.js +1 -1
  73. package/src/sap/ui/vk/ecad/ElementsPanel.js +14 -41
  74. package/src/sap/ui/vk/ecad/LayersPanel.js +8 -25
  75. package/src/sap/ui/vk/i18n/messagebundle.properties +46 -44
  76. package/src/sap/ui/vk/i18n/messagebundle_ar.properties +25 -12
  77. package/src/sap/ui/vk/i18n/messagebundle_bg.properties +25 -12
  78. package/src/sap/ui/vk/i18n/messagebundle_ca.properties +25 -12
  79. package/src/sap/ui/vk/i18n/messagebundle_cnr.properties +25 -12
  80. package/src/sap/ui/vk/i18n/messagebundle_cs.properties +25 -12
  81. package/src/sap/ui/vk/i18n/messagebundle_cy.properties +25 -12
  82. package/src/sap/ui/vk/i18n/messagebundle_da.properties +25 -12
  83. package/src/sap/ui/vk/i18n/messagebundle_de.properties +26 -13
  84. package/src/sap/ui/vk/i18n/messagebundle_el.properties +25 -12
  85. package/src/sap/ui/vk/i18n/messagebundle_en.properties +25 -326
  86. package/src/sap/ui/vk/i18n/messagebundle_en_GB.properties +25 -12
  87. package/src/sap/ui/vk/i18n/messagebundle_en_US_saprigi.properties +26 -12
  88. package/src/sap/ui/vk/i18n/messagebundle_es.properties +27 -14
  89. package/src/sap/ui/vk/i18n/messagebundle_es_MX.properties +25 -12
  90. package/src/sap/ui/vk/i18n/messagebundle_et.properties +25 -12
  91. package/src/sap/ui/vk/i18n/messagebundle_fi.properties +25 -12
  92. package/src/sap/ui/vk/i18n/messagebundle_fr.properties +25 -12
  93. package/src/sap/ui/vk/i18n/messagebundle_fr_CA.properties +25 -12
  94. package/src/sap/ui/vk/i18n/messagebundle_hi.properties +25 -12
  95. package/src/sap/ui/vk/i18n/messagebundle_hr.properties +25 -12
  96. package/src/sap/ui/vk/i18n/messagebundle_hu.properties +25 -12
  97. package/src/sap/ui/vk/i18n/messagebundle_id.properties +26 -13
  98. package/src/sap/ui/vk/i18n/messagebundle_it.properties +25 -12
  99. package/src/sap/ui/vk/i18n/messagebundle_iw.properties +25 -12
  100. package/src/sap/ui/vk/i18n/messagebundle_ja.properties +25 -12
  101. package/src/sap/ui/vk/i18n/messagebundle_kk.properties +37 -24
  102. package/src/sap/ui/vk/i18n/messagebundle_ko.properties +22 -9
  103. package/src/sap/ui/vk/i18n/messagebundle_lt.properties +25 -12
  104. package/src/sap/ui/vk/i18n/messagebundle_lv.properties +25 -12
  105. package/src/sap/ui/vk/i18n/messagebundle_mk.properties +25 -12
  106. package/src/sap/ui/vk/i18n/messagebundle_ms.properties +25 -12
  107. package/src/sap/ui/vk/i18n/messagebundle_nl.properties +25 -12
  108. package/src/sap/ui/vk/i18n/messagebundle_no.properties +25 -12
  109. package/src/sap/ui/vk/i18n/messagebundle_pl.properties +25 -12
  110. package/src/sap/ui/vk/i18n/messagebundle_pt.properties +25 -12
  111. package/src/sap/ui/vk/i18n/messagebundle_pt_PT.properties +25 -12
  112. package/src/sap/ui/vk/i18n/messagebundle_ro.properties +25 -12
  113. package/src/sap/ui/vk/i18n/messagebundle_ru.properties +25 -12
  114. package/src/sap/ui/vk/i18n/messagebundle_sh.properties +25 -12
  115. package/src/sap/ui/vk/i18n/messagebundle_sk.properties +25 -12
  116. package/src/sap/ui/vk/i18n/messagebundle_sl.properties +25 -12
  117. package/src/sap/ui/vk/i18n/messagebundle_sr.properties +25 -12
  118. package/src/sap/ui/vk/i18n/messagebundle_sv.properties +25 -12
  119. package/src/sap/ui/vk/i18n/messagebundle_th.properties +25 -12
  120. package/src/sap/ui/vk/i18n/messagebundle_tr.properties +25 -12
  121. package/src/sap/ui/vk/i18n/messagebundle_uk.properties +25 -12
  122. package/src/sap/ui/vk/i18n/messagebundle_vi.properties +25 -12
  123. package/src/sap/ui/vk/i18n/messagebundle_zh_CN.properties +25 -12
  124. package/src/sap/ui/vk/i18n/messagebundle_zh_TW.properties +25 -12
  125. package/src/sap/ui/vk/library.js +5 -5
  126. package/src/sap/ui/vk/measurements/Angle.js +1 -1
  127. package/src/sap/ui/vk/measurements/Area.js +1 -1
  128. package/src/sap/ui/vk/measurements/Distance.js +1 -1
  129. package/src/sap/ui/vk/measurements/Edge.js +1 -1
  130. package/src/sap/ui/vk/measurements/Face.js +1 -1
  131. package/src/sap/ui/vk/measurements/Feature.js +1 -1
  132. package/src/sap/ui/vk/measurements/Vertex.js +1 -1
  133. package/src/sap/ui/vk/pdf/ContentManager.js +1 -1
  134. package/src/sap/ui/vk/pdf/Page.js +9 -10
  135. package/src/sap/ui/vk/pdf/Utils.js +4 -2
  136. package/src/sap/ui/vk/pdf/Viewport.js +1 -1
  137. package/src/sap/ui/vk/svg/BaseNodeProxy.js +1 -1
  138. package/src/sap/ui/vk/svg/ContentDeliveryService.js +1 -1
  139. package/src/sap/ui/vk/svg/ContentManager.js +4 -5
  140. package/src/sap/ui/vk/svg/NodeHierarchy.js +1 -1
  141. package/src/sap/ui/vk/svg/NodeProxy.js +1 -1
  142. package/src/sap/ui/vk/svg/OrthographicCamera.js +1 -1
  143. package/src/sap/ui/vk/svg/Scene.js +1 -1
  144. package/src/sap/ui/vk/svg/SceneBuilder.js +1 -1
  145. package/src/sap/ui/vk/svg/ViewStateManager.js +1 -1
  146. package/src/sap/ui/vk/svg/Viewport.js +11 -18
  147. package/src/sap/ui/vk/thirdparty/pdf.worker.js +1 -1
  148. package/src/sap/ui/vk/thirdparty/three.js +31455 -31473
  149. package/src/sap/ui/vk/threejs/AnimationHelper.js +1 -1
  150. package/src/sap/ui/vk/threejs/BaseNodeProxy.js +1 -1
  151. package/src/sap/ui/vk/threejs/Billboard.js +23 -11
  152. package/src/sap/ui/vk/threejs/Callout.js +1 -1
  153. package/src/sap/ui/vk/threejs/ContentDeliveryService.js +1 -1
  154. package/src/sap/ui/vk/threejs/ContentManager.js +2 -2
  155. package/src/sap/ui/vk/threejs/DetailView.js +1 -1
  156. package/src/sap/ui/vk/threejs/HighlightPlayer.js +14 -22
  157. package/src/sap/ui/vk/threejs/Material.js +1 -1
  158. package/src/sap/ui/vk/threejs/NodeHierarchy.js +1 -1
  159. package/src/sap/ui/vk/threejs/NodeProxy.js +9 -11
  160. package/src/sap/ui/vk/threejs/OrthographicCamera.js +1 -1
  161. package/src/sap/ui/vk/threejs/OutlineRenderer.js +4 -10
  162. package/src/sap/ui/vk/threejs/PerspectiveCamera.js +1 -1
  163. package/src/sap/ui/vk/threejs/PointCloudGroup.js +1 -1
  164. package/src/sap/ui/vk/threejs/Scene.js +1 -15
  165. package/src/sap/ui/vk/threejs/SceneBuilder.js +1 -4
  166. package/src/sap/ui/vk/threejs/Texture.js +1 -1
  167. package/src/sap/ui/vk/threejs/ThreeExtensions.js +10 -174
  168. package/src/sap/ui/vk/threejs/ThreeUtils.js +7 -18
  169. package/src/sap/ui/vk/threejs/Thrustline.js +1 -1
  170. package/src/sap/ui/vk/threejs/ViewStateManager.js +751 -446
  171. package/src/sap/ui/vk/threejs/Viewport.js +41 -31
  172. package/src/sap/ui/vk/tools/AnchorPointTool.js +1 -1
  173. package/src/sap/ui/vk/tools/AnchorPointToolGizmo.js +1 -1
  174. package/src/sap/ui/vk/tools/AxisAngleRotationTool.js +1 -1
  175. package/src/sap/ui/vk/tools/AxisAngleRotationToolGizmo.js +1 -1
  176. package/src/sap/ui/vk/tools/CreateEllipseTool.js +1 -1
  177. package/src/sap/ui/vk/tools/CreateEllipseToolGizmo.js +1 -1
  178. package/src/sap/ui/vk/tools/CreateParametricGizmo.js +1 -1
  179. package/src/sap/ui/vk/tools/CreatePathTool.js +1 -1
  180. package/src/sap/ui/vk/tools/CreatePathToolGizmo.js +1 -1
  181. package/src/sap/ui/vk/tools/CreateRectangleTool.js +1 -1
  182. package/src/sap/ui/vk/tools/CreateRectangleToolGizmo.js +1 -1
  183. package/src/sap/ui/vk/tools/CreateTextTool.js +1 -1
  184. package/src/sap/ui/vk/tools/CreateTextToolGizmo.js +1 -1
  185. package/src/sap/ui/vk/tools/CrossSectionTool.js +1 -1
  186. package/src/sap/ui/vk/tools/CrossSectionToolGizmo.js +1 -1
  187. package/src/sap/ui/vk/tools/DuplicateSvgElementTool.js +1 -1
  188. package/src/sap/ui/vk/tools/DuplicateSvgElementToolGizmo.js +1 -1
  189. package/src/sap/ui/vk/tools/ExplodeTool.js +1 -1
  190. package/src/sap/ui/vk/tools/ExplodeToolGizmo.js +1 -1
  191. package/src/sap/ui/vk/tools/Gizmo.js +1 -1
  192. package/src/sap/ui/vk/tools/HitTestTool.js +1 -1
  193. package/src/sap/ui/vk/tools/MoveTool.js +1 -1
  194. package/src/sap/ui/vk/tools/MoveToolGizmo.js +1 -1
  195. package/src/sap/ui/vk/tools/PointCloudSelectionTool.js +1 -1
  196. package/src/sap/ui/vk/tools/PointCloudSelectionToolGizmo.js +1 -1
  197. package/src/sap/ui/vk/tools/RectSelectTool.js +1 -1
  198. package/src/sap/ui/vk/tools/RedlineTool.js +1 -1
  199. package/src/sap/ui/vk/tools/RedlineToolGizmo.js +1 -1
  200. package/src/sap/ui/vk/tools/RotateOrbitTool.js +1 -1
  201. package/src/sap/ui/vk/tools/RotateTool.js +1 -1
  202. package/src/sap/ui/vk/tools/RotateToolGizmo.js +1 -1
  203. package/src/sap/ui/vk/tools/RotateTurntableTool.js +1 -1
  204. package/src/sap/ui/vk/tools/ScaleTool.js +1 -1
  205. package/src/sap/ui/vk/tools/ScaleToolGizmo.js +1 -1
  206. package/src/sap/ui/vk/tools/SceneOrientationTool.js +1 -1
  207. package/src/sap/ui/vk/tools/SceneOrientationToolGizmo.js +1 -1
  208. package/src/sap/ui/vk/tools/Tool.js +1 -1
  209. package/src/sap/ui/vk/tools/TooltipTool.js +1 -1
  210. package/src/sap/ui/vk/tools/TooltipToolGizmo.js +1 -1
  211. package/src/sap/ui/vk/tools/TooltipToolHandler.js +5 -0
  212. package/src/sap/ui/vk/tools/TransformSvgElementTool.js +1 -1
  213. package/src/sap/ui/vk/tools/TransformSvgElementToolGizmo.js +1 -1
  214. package/src/sap/ui/vk/totara/TotaraLoader.js +2 -2
  215. package/src/sap/ui/vk/totara/TotaraLoaderWorker.js +18 -21
  216. package/ui5.yaml +5 -3
  217. package/src/sap/ui/vk/threejs/v2/ViewStateManager.js +0 -1445
@@ -41,182 +41,16 @@ sap.ui.define([
41
41
  }
42
42
  };
43
43
 
44
- THREE.Object3D.prototype._vkSetHighlightColor = function(colorABGR) {
45
- this._vkTraverseNodeGeometry(function(node) {
46
- node.userData.highlightingColor = colorABGR;
47
- node._vkUpdateMaterialColorAndOpacity();
48
- });
49
- };
50
-
51
- THREE.Object3D.prototype._vkSetTintColor = function(tintColorABGR) {
52
- this._vkTraverseNodeGeometry(function(node) {
53
- node.userData.tintColor = tintColorABGR;
54
- node._vkUpdateMaterialColorAndOpacity();
55
- });
56
- };
57
-
58
- THREE.Object3D.prototype._vkSetOpacity = function(opacity, joints) {
59
- this.userData.opacity = opacity;
60
- var nodeJointMap;
61
- var parentJointsMap;
62
- if (joints) {
63
- nodeJointMap = new Map();
64
- parentJointsMap = new Map();
65
- joints.forEach(function(joint) {
66
- if (!joint.node || !joint.parent) {
67
- return;
68
- }
69
- nodeJointMap.set(joint.node, joint);
70
- if (joint.parent) {
71
- var jointsArray = parentJointsMap.get(joint.parent);
72
- if (!jointsArray) {
73
- jointsArray = [];
74
- }
75
- jointsArray.push(joint);
76
- parentJointsMap.set(joint.parent, jointsArray);
77
- }
78
- });
79
- }
80
- this._vkTraverseNodes(function(node) {
81
- node._vkUpdateMaterialOpacity(nodeJointMap);
82
- }, nodeJointMap, parentJointsMap);
83
- };
84
-
85
- THREE.Object3D.prototype._vkUpdateMaterialColorAndOpacity = function() {
86
- if (!this.material || !this.material.color) {
87
- return;
88
- }
89
-
90
- var userData = this.userData;
91
- userData.blendColor = null;
92
-
93
- if (userData.originalMaterial) {
94
- this.material.color.copy(userData.originalMaterial.color); // diffuse color, may be multiplied by material.map
95
- this.material.emissive?.copy(userData.originalMaterial.emissive);
96
- this.material.specular?.copy(userData.originalMaterial.specular);
97
- }
98
-
99
- if (userData.highlightColor !== undefined || userData.tintColor !== undefined || userData.highlightingColor !== undefined) {
100
- if (!userData.originalMaterial) {
101
- // The original material might be shared with other objects, so assign it to
102
- // userData.originalMaterial and replace the own material with cloned one.
103
- userData.originalMaterial = this.material;
104
- this.material = this.material.clone();
105
- }
106
-
107
- const color = new THREE.Vector4(0, 0, 0, 0);
108
-
109
- if (userData.highlightingColor !== undefined) { // highlighting animation of the view (HighlightPlayer)
110
- color.fromArray(userData.highlightingColor);
111
- }
112
-
113
- if (userData.tintColor !== undefined) { // tinting (ViewStateManangert)
114
- const c = abgrToColor(userData.tintColor);
115
- color.lerp(new THREE.Vector4(c.red / 255.0, c.green / 255.0, c.blue / 255.0, 1), c.alpha);
116
- }
117
-
118
- if (userData.highlightColor !== undefined) { // selection (ViewStateManangert)
119
- const c = abgrToColor(userData.highlightColor);
120
- color.lerp(new THREE.Vector4(c.red / 255.0, c.green / 255.0, c.blue / 255.0, 1), c.alpha);
121
- }
122
-
123
- if (color.w > 0) {
124
- userData.blendColor = color.toArray();
125
-
126
- const blendColor = new THREE.Color(color.x, color.y, color.z);
127
- this.material.color.lerp(blendColor, color.w);
128
- this.material.emissive?.lerp(blendColor, color.w * 0.5);
129
- this.material.specular?.multiplyScalar(1 - 0.75 * color.w); // reduce specular as it may overexpose the highlighting
130
- }
131
- }
132
-
133
- this._vkUpdateMaterialOpacity();
134
- };
135
-
136
- THREE.Object3D.prototype._vkUpdateMaterialOpacity = function(nodeJointMap) {
137
- if (!this.material) {
138
- return;
139
- }
140
-
141
- var userData = this.userData;
142
-
143
- if (userData.originalMaterial) {
144
- this.material.opacity = userData.originalMaterial.opacity;
145
- this.material.transparent = userData.originalMaterial.transparent;
146
- }
147
-
148
- var opacity = 1.0;
149
-
150
- var hasOpacity = false;
151
- let renderMethod;
152
-
153
- var obj3D = this; // eslint-disable-line consistent-this
154
- do {
155
- renderMethod ??= obj3D.userData.renderMethod;
156
-
157
- var currentOpacity = null, joint = null;
158
- if (nodeJointMap) {
159
- joint = nodeJointMap.get(obj3D);
44
+ THREE.Object3D.prototype._vkSetOpacityRecursive = function(opacity) { // used only to change the opacity of Symbols depending on the camera direction
45
+ this.traverseVisible(function(child) {
46
+ if (child.material) {
47
+ child.material.opacity = opacity;
48
+ child.material.transparent = opacity < 1.0;
160
49
  }
161
-
162
- if (joint && joint.opacity != null) {
163
- currentOpacity = joint.opacity;
164
- } else if (obj3D.userData.opacity !== undefined && obj3D.userData.opacity !== 1) {
165
- currentOpacity = obj3D.userData.opacity;
166
- }
167
-
168
- var offsetOpacity = 1;
169
- if (joint && joint.opacity != null && obj3D.userData && obj3D.userData.offsetOpacity != null) {
170
- offsetOpacity = obj3D.userData.offsetOpacity;
171
- }
172
-
173
- if (currentOpacity != null) {
174
- opacity *= currentOpacity;
175
- opacity *= offsetOpacity;
176
- hasOpacity = true;
177
- }
178
-
179
- if (joint && joint.parent) {
180
- obj3D = joint.parent;
181
- continue;
182
- }
183
-
184
- obj3D = obj3D.parent;
185
- } while (obj3D);
186
-
187
- if (renderMethod === 2) { // TRANSPARENT
188
- opacity *= 0.5;
189
- hasOpacity = true;
190
- }
191
-
192
- if (hasOpacity || this.renderOrder > 0) {
193
- if (!userData.originalMaterial) {
194
- userData.originalMaterial = this.material;
195
- this.material = this.material.clone();
196
- if (this.isMesh && !this.geometry.getAttribute("normal")) {
197
- // Make three.js material double-sided if geometry does not have normals defined
198
- this.material.side = THREE.DoubleSide;
199
- this.material.userData.originalMaterialSide = THREE.DoubleSide;
200
- }
201
- }
202
-
203
- if (this.renderOrder > 0 && !this.isOutline) {
204
- this.material.depthTest = false;
205
- this.material.transparent = true; // enable z-sorting
206
- }
207
-
208
- if (this.material.opacity) {
209
- this.material.opacity *= opacity;
210
- var materialIsTransparent = userData.originalMaterial.transparent || this.material.opacity < 1;
211
- if (materialIsTransparent !== this.material.transparent) {
212
- this.material.transparent = materialIsTransparent;
213
- this.material.needsUpdate = true; // three.js needs to update shaders for this material
214
- }
215
- }
216
- }
50
+ });
217
51
  };
218
52
 
219
- THREE.Object3D.prototype._vkGetTotalOpacity = function(joints) {
53
+ THREE.Object3D.prototype._vkGetTotalOpacity = function(joints, vsm) {
220
54
  var nodeJointMap;
221
55
  if (joints) {
222
56
  nodeJointMap = new Map();
@@ -241,6 +75,8 @@ sap.ui.define([
241
75
 
242
76
  if (joint && joint.opacity != null) {
243
77
  currentOpacity = joint.opacity;
78
+ } else if (vsm) {
79
+ currentOpacity = vsm._getOpacity(obj3D);
244
80
  } else if (obj3D.userData && obj3D.userData.opacity !== undefined) {
245
81
  currentOpacity = obj3D.userData.opacity;
246
82
  }
@@ -268,7 +104,7 @@ sap.ui.define([
268
104
  };
269
105
 
270
106
  THREE.Object3D.prototype._vkTraverseMeshNodes = function(callback) {
271
- if (this._vkUpdate !== undefined || this.isDetailView) {
107
+ if (this._vkUpdate !== undefined || this.isDetailView || this.userData.nodeContentType === NodeContentType.PMI) {
272
108
  return;
273
109
  }
274
110
 
@@ -455,29 +455,18 @@ sap.ui.define([
455
455
  // '0' - hidden, '1' - draw as cluster, '2' - render by three js, '3' - cluster with custom color
456
456
  if (!cluster.isPoints && (ud.initialMaterialId !== ud.materialId
457
457
  || node.renderOrder != 0
458
- || ud.blendColor != null
458
+ || ud.customMaterial
459
459
  || ud.defaultMaterial // defaultMaterial is used for Outline objects
460
460
  || node.material.transparent === true)) {
461
461
 
462
462
  scratch8[3] = 2; // render using threejs standard rendering
463
463
  cluster.additionalRenderables.push(node);
464
- } else if (ud.highlightColor || ud.tintColor) {
465
- // custom diffuse and hardcoded specular+emissive
466
- var ce = node.material.emissive;
467
- var cs = node.material.specular;
468
- // todo: no need to check if emissive === 0.0235 and then put its values into scratch8[]
469
- // this will need an update in threejs shaders
470
- if (ce.r === 0.0235 && ce.g === 0.0235 && ce.b === 0.0235
471
- && cs.r === 0.0602 && cs.g === 0.0602 && cs.b === 0.0602) {
472
- ce = node.material.color;
473
- scratch8[0] = 255 * ce.r;
474
- scratch8[1] = 255 * ce.g;
475
- scratch8[2] = 255 * ce.b;
476
- scratch8[3] = 3; // cluster render + patch color
477
- } else {
478
- scratch8[3] = 2; // render using threejs standard rendering
479
- cluster.additionalRenderables.push(node);
480
- }
464
+ } else if (ud.customMaterial && node.material.userData.customColor) { // point cloud with highlighting/tinting
465
+ const ce = node.material.color;
466
+ scratch8[0] = 255 * ce.r;
467
+ scratch8[1] = 255 * ce.g;
468
+ scratch8[2] = 255 * ce.b;
469
+ scratch8[3] = 3; // cluster render + patch color
481
470
  } else {
482
471
  scratch8[3] = 1; // cluster render
483
472
  }
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @class
30
30
  * @private
31
31
  * @author SAP SE
32
- * @version 1.138.0
32
+ * @version 1.139.0
33
33
  * @extends sap.ui.base.ManagedObject
34
34
  * @alias sap.ui.vk.threejs.Thrustline
35
35
  */