Techniques for providing proprietary tile-based and/or non-tile-based graphics processing to an open-source infrastructure modeling platform
Inventors
Assignees
Interested in licensing this patent?
MTEC can help explore whether this patent might be available for licensing for your application.
Abstract
In example embodiments, a proprietary implementation of tile-based and/or non-tile-based graphics processing is provided at run-time as a binary for use in an open-source infrastructure modeling platform. An open-source repository from which the infrastructure modeling platform is built includes a backend module and definitions of the interface of a visualization module from a private repository that implements the tile-based and/or non-tile-based processing. The open-source repository lacks code for the underlying implementation of the visualization module. The implementation of the visualization module is instead maintained in a private repository and built therefrom. In operation, the backend module calls an exposed function of a DLL that returns a pointer to a binary implementation of the visualization module. When graphics of an infrastructure model are required, the backend module utilizes the defined interface with the pointer to request tile-based and/or non-tile-based processing from the visualization module.
Core Innovation
The invention relates to rendering an infrastructure model within an open-source infrastructure modeling platform by dynamically loading a visualization module built from a private repository into a backend module. The backend module calls a function of a dynamically loaded module (DLL) to obtain a pointer to an implementation of the visualization module that implements tile-based graphics processing and, in related embodiments, non-tile-based graphics processing.
A core aspect is coordinating tile-tree driven rendering between the frontend module and the backend module, where the backend module determines a need to render graphics for at least a portion of the infrastructure model. The backend module receives an initial request for a description of a tile tree to which a tile belongs, calls the visualization module to obtain the description of the tile tree, and then receives a subsequent request to generate graphics for a tile in the tile tree.
The tile-based request includes an identification of a set of elements that intersect a volume of the tile, so that the visualization module processes tile-based graphics based on the tile-tree context and element intersection. In embodiments including non-tile-based processing, the request includes at least one of an identification of a set of elements or an identification of a symbology and geometric primitives, and the backend module uses defined primary interfaces and supporting interfaces for tile-based and non-tile-based processing to generate and return graphics for display.
Claims Coverage
The partial content includes two independent claims, covering a method for rendering an infrastructure model in an open-source infrastructure modeling platform using a dynamically loaded visualization module from a private repository, with tile-based processing in one claim and tile-based plus non-tile-based processing with defined primary and supporting interfaces in the other claim.
Dynamically loaded visualization module from private repository for tile-based processing
Calling, by a backend module of an open-source infrastructure modeling platform, a function of a dynamically loaded module (DLL) to obtain a pointer to an implementation of a visualization module built from a private repository that implements tile-based graphics processing.
Tile tree description request and tile-based graphics request coordination
Determining a need to render graphics comprises receiving, by the backend module from the frontend module, an initial request for the description of a tile tree to which a tile belongs, calling, by the backend module, the visualization module to obtain the description of the tile tree, and receiving, by the backend module from the frontend module, a subsequent request to generate graphics for a tile in the tile tree.
Tile-based processing request including elements intersecting tile volume
Utilizing, by the backend module, an interface of the visualization module with the pointer to request tile-based processing of graphics by the implementation, wherein the request includes an identification of a set of elements that intersect a volume of the tile.
Receiving processed graphics at the frontend module for display
Receiving processed graphics produced by the visualization module at a frontend module of the open-source infrastructure modeling platform for display to a user.
Visualization module with tile-based and non-tile-based processing using primary and supporting interfaces
Calling, by a backend module of an open-source infrastructure modeling platform, a function of a dynamically loaded module (DLL) to obtain a pointer to an implementation of a visualization module built from a private repository that implements tile-based graphics processing and non-tile-based graphics processing; and utilizing, by the backend module, an interface of the visualization module with the pointer to request tile-based and/or non-tile-based processing of graphics, wherein the interface includes a primary interface for tile-based graphics processing and a supporting interface for non-tile-based graphics processing.
Non-tile-based input options for rendering need determination
The request includes at least one of an identification of a set of elements that intersect a volume of a tile, identification of a set of elements, or an identification of a symbology and geometric primitives.
Across the two independent claims, the main inventive features are dynamic loading of a visualization module implementation from a private repository via a DLL pointer in an open-source infrastructure modeling platform, tile-tree driven determination of a need to render, requesting tile-based graphics processing using an elements-intersecting-tile-volume input, and receiving processed graphics at a frontend module for display; the broader independent claim additionally specifies non-tile-based graphics processing using a primary tile interface and a supporting non-tile interface with element and/or symbology/geometric-primitive inputs.
Stated Advantages
Documented Applications
No documented applications found
Interested in licensing this patent?