def _generateNodeGraphicsSection(self, oglObject: OglObject) -> str: pos = oglObject.GetPosition() x = pos[0] y = pos[1] z = 0 dimensions = oglObject.GetSize() w = dimensions[0] h = dimensions[1] d = 0 gml = ( f'{GMLExporter.doubleTab}{GMLExporter.GRAPHICS_TOKEN} {GMLExporter.START_TOKEN}\n' f'{GMLExporter.tripleTab}{GMLExporter.X_POSITION_TOKEN} {x}\n' f'{GMLExporter.tripleTab}{GMLExporter.Y_POSITION_TOKEN} {y}\n' f'{GMLExporter.tripleTab}{GMLExporter.Z_POSITION_TOKEN} {z}\n' f'{GMLExporter.tripleTab}{GMLExporter.WIDTH_TOKEN} {w}\n' f'{GMLExporter.tripleTab}{GMLExporter.HEIGHT_TOKEN} {h}\n' f'{GMLExporter.tripleTab}{GMLExporter.DEPTH_TOKEN} {d}\n' f'{GMLExporter.tripleTab}type "rectangle"\n' f'{GMLExporter.tripleTab}width 0.12\n' f'{GMLExporter.tripleTab}fill "#ff0000"\n' f'{GMLExporter.tripleTab}outline "#000000"\n' f'{GMLExporter.doubleTab}{GMLExporter.END_TOKEN}\n' ) return gml
def _appendOglBase(self, oglObject: OglObject, root): """ Saves the position and size of the OGL object in XML node. @param OglObject oglObject : OGL Object @param Element root : XML node to write @author Philippe Waelti <*****@*****.**> """ # Saving size # w, h = oglObject.GetBoundingBoxMin() w, h = oglObject.GetSize() root.setAttribute('width', str(int(w))) root.setAttribute('height', str(int(h))) # Saving position # x = int(oglObject.GetX()) # y = int(oglObject.GetY()) x, y = oglObject.GetTopLeft() root.setAttribute('x', str(x)) root.setAttribute('y', str(y))