--- tags: opc, dibit, pro3d title: OPC 2.0 --- # 20201012 Analyse 2d daten ![](https://i.imgur.com/UwNAikR.png) * opc wQvs5quXTHCWOfjCtxPhTw ``` <Local2Global2D> [[1.0, 0.0, 0.0, 79356.37096153232], [0.0, 1.0, 0.0, -7.287652550667628], [0.0, 0.0, 1.0, -0.14676951093895685], [0.0, 0.0, 0.0, 1.0]] </Local2Global2D> <LocalBoundingBox2D> [[2.1244585457170615, 0.47379607014288183, 0.9121988673835855], [-2.3298536864604102, -1.0271452597644526, -0.9522482422959022]] </LocalBoundingBox2D> <GlobalBoundingBox2D> [[79358.49542007803, -6.813856480524747, 0.7654293564446286], [79354.04110784586, -8.314797810432081, -1.099017753234859]] </GlobalBoundingBox2D> ``` * opc XIOFHeM2SiWRViyUAFqZ-A ``` <Local2Global2D> [[1.0, 0.0, 0.0, 79356.29256601854], [0.0, 1.0, 0.0, -4.840405753346079], [0.0, 0.0, 1.0, 0.34400761418846937], [0.0, 0.0, 0.0, 1.0]] </Local2Global2D> <LocalBoundingBox2D> [[1.2871788932097843, -1.6694699489615594, 0.6825793580170361], [-1.425132727570599, 1.5592277049066983, 0.10310639372433883]] </LocalBoundingBox2D> <GlobalBoundingBox2D> [[79357.57974491175, -6.509875702307639, 1.0265869722055054], [79354.86743329097, -3.281178048439381, 0.4471140079128082]] </GlobalBoundingBox2D> ``` * opc Niklasdorf ``` <Local2Global2D> [[1.000000000, 0.000000000, 0.000000000, 89823.000000000], [0.000000000, 1.000000000, 0.000000000, 0.000000000], [0.000000000, 0.000000000, 1.000000000, 0.000000000], [0.000000000, 0.000000000, 0.000000000, 1.000000000]] </Local2Global2D> <LocalBoundingBox2D> [[0.000000000, -13.772300000, -1.192999793], [11.000000000, 13.772000000, 0.125999131]] </LocalBoundingBox2D> ``` # Analyse OPC Rework `2020_09_17` and `2020_09_11` * datasets simple (Mars) and Tunnel (Dibit) * _full ... one texture for all * _legacy ... one texture for each patch ## (1) `2020_09_17/simple_full` ### weird levels of detail * level N ![](https://notes.vrvis.at/uploads/upload_edca57abcf62dec15ee9392a1a760593.png) * level 2 ![](https://notes.vrvis.at/uploads/upload_c48234f995489699d06426d122129907.png) * level 1 and level 0 ![](https://notes.vrvis.at/uploads/upload_7faa4373e7003d03d463ea173e8f994c.png) ## (2)`2020_09_17/tunnel_full` ### Patch.xml * contains `Positions2D` tag with absolute path * redundantly contains SvBR aara as attribute layer * local2global trafo is identity ```xml <Aardvark> <Patch> <TagList/> <PatchColRowOffset>0, 0</PatchColRowOffset> <QuadVertexSortOrder>RowMajor</QuadVertexSortOrder> <GeometryType>QuadList</GeometryType> <Local2Global>[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]]</Local2Global> <LocalBoundingBox>[[42510.0, 54358.0, 536.0], [42524.0, 54372.0, 543.0]]</LocalBoundingBox> <GlobalBoundingBox>[[42510.0, 54358.0, 536.0], [42524.0, 54372.0, 543.0]]</GlobalBoundingBox> <Local2Global2D>[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]]</Local2Global2D> <LocalBoundingBox2D>[[89920.02890238518, -7.690501356434705, 236287.31833924717], [89920.059295944, -7.690316720028431, 236283.44460418905]]</LocalBoundingBox2D> <GlobalBoundingBox2D>[[89920.02890238518, -7.690501356434705, 236287.31833924717], [89920.059295944, -7.690316720028431, 236283.44460418905]]</GlobalBoundingBox2D> <Positions2D>C:\Develop\Test\UV-Mapping\VRVis3\tunnel_full_OR_0000_OC_0000\Patches\L_0004_PR_0000_PC_0000\tunnel_full_OR_0000_OC_0000_L_0004_PR_0000_PC_0000_SvBR.aara</Positions2D> <Positions>tunnel_full_OR_0000_OC_0000_L_0004_PR_0000_PC_0000_LocalCartesian.aara</Positions> <Attributes> <SvBR>tunnel_full_OR_0000_OC_0000_L_0004_PR_0000_PC_0000_SvBR.aara</SvBR> </Attributes> <Coordinates> <DiffuseColor1Coordinates>tunnel_full_OR_0000_OC_0000_L_0004_PR_0000_PC_0000_TextureCoordinates.aara</DiffuseColor1Coordinates> </Coordinates> <Textures> <DiffuseColor1Texture>Texture\tunnel_full_OR_0000_OC_0000_Texture.tif</DiffuseColor1Texture> <DiffuseColor1Weights>tunnel_full_OR_0000_OC_0000_L_0004_PR_0000_PC_0000_ColorWeights.aara</DiffuseColor1Weights> </Textures> </Patch> </Aardvark> ``` ### Minecraft Style * possible wrong encoding or aaras ### Missing Scalar Layer * missing scalar values/attributes for tunnel, because of missing entry in opcx ![](https://notes.vrvis.at/uploads/upload_a5ecaf8aec02d12ea37e13649f6811d9.png) ## (3) `2020_09_11\tunnel_full\` ### NullrefException in PRo3D * missing mandatory tags `ChannelsDefinedRange` and `ChannelsActualRange` in `*.opcx` file for attribute layer ![](https://notes.vrvis.at/uploads/upload_51d06995e27010cdbefb35523451e4f6.png) * :question: VRVis ... make tags optional * :question: JR ... add mandatory tags * :exclamation: make formal opcx spec ![](https://i.imgur.com/wEhpN13.png) ## (4) `2020_09_11\simple_full\` ### OutOfIndexException in PRo3D ![](https://notes.vrvis.at/uploads/upload_f23f0bca7e29e19a1c47b9a2cc40863f.png) * missing weights in patch.xml ... this should not be mandatory, weights are not used anyway * :exclamation: VRVis ... fixed parser in Aardvark.Rendering version 5.0.11 * :question: VRVis/JR unclear how to handle attributes in patch.xml. At the moment only attributes in `*.opcx` count. There was a discussion with dibit about what happens after adding opcs to a surface with other attributes.