Cross-platform oil and gas exploration data access and visualization method and device

Through the function encapsulation container class FuncHolder and attribute visualization module, the complexity of base map software data attribute display caused by the callback function parameter type limitation is solved, and efficient visualization and simplified maintenance of cross-platform oil and gas exploration data is realized.

CN118819476BActive Publication Date: 2025-09-02CHINA NAT PETROLEUM CORP +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310430479.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-21
Publication Date
2025-09-02
Estimated Expiration
2043-04-21

AI Technical Summary

Technical Problem

In the prior art, the parameter type limitation of the callback function leads to the problem of code duplication and maintenance difficulties when displaying different types of data attributes.

Method used

The function encapsulates the container class FuncHolder and the attribute visualization module are used to create the attribute visualization module through the function encapsulates the container class FuncHolder, which supports variable parameter callback functions, simplifies attribute browsing and editing, and realizes cross-platform data access and visualization.

Benefits of technology

It simplifies the attribute browsing and editing functions of the base map software, improves development and maintenance efficiency, reduces the amount of code, and improves data display efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118819476B_ABST
    Figure CN118819476B_ABST
Patent Text Reader

Abstract

This invention belongs to the field of geophysical exploration technology and discloses a cross-platform oil and gas exploration data access and visualization method. First, a function encapsulation container class is created. Based on this function encapsulation container class, an attribute visualization module for attribute creation and editing is created. The attribute visualization module is applied to the base map software of an interpretation system to achieve data access and visualization. The invention also discloses a cross-platform oil and gas exploration data access and visualization device. This invention simplifies attribute browsing and editing in the base map software of a seismic data processing and interpretation system, improves the base map software's display efficiency, and reduces the amount of code and the complexity of subsequent maintenance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of geophysical exploration, and relates to a cross-platform oil and gas exploration data access and visualization method and device. Background Art

[0002] Callback functions are widely used as a software implementation method in oil and gas exploration software. Essentially, a callback function involves passing and calling a function pointer. Software implementation generally involves three steps: specifying the function's parameter and return types within the callback function definition; registering the callback function according to the defined format; and finally, invoking the callback function under specific conditions by constructing parameter values ​​based on the defined parameter types. A callback function typically contains one or more parameters and often a return value. In typical applications, the parameters or return values ​​of callback functions typically have fixed types. For example, in many cases, a parameter is a base class type, while a subclass type is often passed in the actual parameter. This type-specific calling method also limits the use of callback functions in some application scenarios. In many cases, template functions are often written to simplify implementation, but using specific types can limit their applicability.

[0003] Geobasemap, a key component of the GeoEast seismic data processing and interpretation system, is responsible for displaying various types of data. Using callback functions, it displays data such as work areas, horizons, faults, and wells in the form of a planar map. Within this software, data typically exists as layers or primitives. Browsing and editing the properties of these layers or primitives is also a key visualization function of basemap software. Furthermore, basemap software faces a wide variety of data types, and the layers and primitives displayed in the workspace are numerous, making the display of these properties complex. Creating attributes according to the previous callback function template and then handling attribute changes would result in a large amount of duplicate or similar code, making software implementation and maintenance difficult. Summary of the Invention

[0004] The purpose of the present invention is to provide a cross-platform oil and gas exploration data access and visualization method to solve the problem of browsing and editing properties of different types of data in the base map software of seismic data processing and interpretation software.

[0005] Another object of the present invention is to provide a cross-platform oil and gas exploration data access and visualization device.

[0006] In order to achieve the above-mentioned purpose, the present invention adopts the following technical solutions:

[0007] A cross-platform oil and gas exploration data access and visualization method includes the following steps:

[0008] S1. Create a function encapsulation container class FuncHolder for wrapping functions of any type;

[0009] S2. Create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder;

[0010] S3. Apply the attribute visualization module to the base map software of the interpretation system to achieve data access and visualization.

[0011] As a limitation, the specific process of step S1 includes:

[0012] S11. Write the Invoker auxiliary class in the function encapsulation container class FuncHolder and the constructor of the function encapsulation container class FuncHolder;

[0013] The function encapsulation container class FuncHolder's constructor is used to receive any type of function as a parameter and supports delayed function calling. The constructor is associated with an STL function object and holds the function passed in by the constructor by binding the static function apply of the Invoker auxiliary class.

[0014] S12. Write the call method of the function encapsulation container class FuncHolder, so that the interface of the function encapsulation container class FuncHolder supports variable parameter template parameters, and define the return value of the interface of the function encapsulation container class FuncHolder and the return specified type.

[0015] As a second limitation, the specific process of step S2 includes:

[0016] S21. Creating a property node class Property Node and its derived classes, and a node creation class Property Node Creator according to the function encapsulation container class FuncHolder. The derived classes of the property node class Property Node are used to process parameters of attributes of different data types. The node creation class Property Node Creator is used to create different property node classes Property Node or their derived classes according to the data type.

[0017] S22. Create a property value class Property Node Data, where the property value class Property Node Data is used to set the value of a property and return the value of a property;

[0018] S23. Create a property data base class Property Base. The property data base class Property Base serves as a property management class and is responsible for defining a property list, updating property values, processing property changes, and managing a property processing interface class Property Handler.

[0019] S24. Create a property item structure class Property Item, wherein the property item structure class Property Item includes a property type, a property name, a property set method, a property get method, and a sub-property list;

[0020] S25. Create a property entity class Property Entry, which includes a collection of property item structure classes Property Item and a pointer to the property entity class Property Entry; the property data base class Property Base relies on the property entity class Property Entry to traverse the property item structure class Property Item object list to create properties;

[0021] S26. Create a property handling interface class Property Handler and its derived classes based on the property item structure class Property Item and the property entity class Property Entry. Aggregate a list of property handling interface classes Property Handler in the property data base class Property Base. Find the corresponding property handling interface class PropertyHandler derived class based on the data type and call the corresponding interface of the derived class.

[0022] S27. Combined with steps S24 to S26, add a property entity class Property Entry object to the property data base class Property Base, and add functions for creating a property node class Property Node list based on the property item structure class PropertyItem list in the property entity class Property Entry, updating property node values, and responding to property changes;

[0023] S28. Create an adapter associated with the underlying GUI module. The adapter aggregates a Property Base object, creates corresponding properties in the underlying GUI module and sets property values ​​based on the Property Node list provided by the Property Base, processes property changes in the underlying GUI module, and passes the changes to the Property Base interface for processing property changes.

[0024] S29. Summarize steps S21 to S28 into an independent dynamic library module, namely, an attribute visualization module.

[0025] As a further limitation, in step S21, the property node class Property Node represents a property, and the property includes the property name, property value and sub-property list.

[0026] As a further limitation, the specific process of step S23 is:

[0027] S231, creating an attribute list, for the underlying GUI module to create an attribute object supported by the underlying GUI module for each attribute node object according to the attribute list;

[0028] S232: Update attribute value, used to initialize or refresh attribute value;

[0029] S233. Manage the attribute processing interface, which is used to notify in the attribute processing interface when the attribute node object in the underlying GUI module is modified.

[0030] As a further limitation, the specific process of step S24 is:

[0031] Macro registration is used to generate a property item structure Property Item object list, and then a property node is created according to the property item structure Property Item object list, and then a property node object of the underlying GUI module is created according to the property node.

[0032] As a further limitation, in step S27, a Property Node list of a property node class is created according to a Property Item list of a property item structure class in a Property Entry class. The specific process is as follows:

[0033] According to the Property Item list in the Property Entry class, the corresponding Property Handler class is found using a key-value pair method based on the data type of the Property Item structure class. In the Property Handler class, the Property Node Creator class for creating nodes of the corresponding data type is called to create a Property Node list.

[0034] As a further limitation, in step S27, the function of updating the attribute node value and responding to attribute changes according to the attribute item structure class Property Item list in the attribute entity class Property Entry is specifically as follows:

[0035] According to the data type of the property item structure class Property Item, the corresponding property processing interface class Property Handler is found using the key-value pair method, and the corresponding function of its own property update or property change interface is called in the property processing interface class Property Handler.

[0036] The present invention also provides a cross-platform oil and gas exploration data access and visualization device, comprising:

[0037] Function encapsulation container class module, used to create a function encapsulation container class FuncHolder that wraps any function;

[0038] The attribute visualization interface library module is used to create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder;

[0039] The data access and visualization module is used to apply the attribute visualization module to the base map software of the oil and gas exploration interpretation system to achieve data access and visualization.

[0040] Due to the adoption of the above technical solution, the present invention has achieved the following technical advancements compared with the prior art:

[0041] (1) The present invention provides a method for encapsulating a function container, based on which a set of attribute visualization modules is provided to simplify browsing and editing of visual data attributes, and the attribute visualization module is applied to data access and visualization of the base map software of the interpretation system;

[0042] (2) The function encapsulation container class FuncHolder of the present invention enhances the implementation of callback functions, supports variable parameter callback functions, supports template calling, and solves the problems of common callback function implementation and large-scale data attribute display in base map software;

[0043] (3) The attribute visualization module created by the present invention simplifies the implementation of a large number of attribute browsing and display functions of the base map software, and the software is easier to write and maintain, effectively improving the development and execution efficiency of the software, and greatly reducing the amount of code and the complexity of subsequent maintenance.

[0044] In summary, the present invention simplifies the attribute browsing and editing in the base map software of the seismic data processing and interpretation system and improves the display efficiency of the base map software. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Figure 1 Shown is a flow chart of the method of Example 1 of the present invention;

[0046] Figure 2FIG2 is a structural diagram of a function encapsulation container class according to Embodiment 1 of the present invention;

[0047] Figure 3 FIG2 is a flow chart of a method of an attribute visualization module according to Embodiment 1 of the present invention;

[0048] Figure 4 FIG2 is a schematic diagram of the use process of the attribute visualization library of Example 1 of the present invention;

[0049] Figure 5 Shown is a call hierarchy diagram of embodiment 1 of the present invention combined with base map software;

[0050] Figure 6 Shown is a flow chart of embodiment 1 of the present invention combined with base map software;

[0051] Figure 7 FIG2 is a block diagram of an apparatus according to Embodiment 2 of the present invention;

[0052] Figure 8 FIG. 4 is a device block diagram of an attribute visualization module according to Embodiment 2 of the present invention. DETAILED DESCRIPTION

[0053] In order to better explain the present invention and facilitate understanding, the present invention is described in detail below through specific implementation methods in conjunction with the accompanying drawings.

[0054] Example 1 A cross-platform oil and gas exploration data access and visualization method

[0055] like Figure 1 As shown, this embodiment is a cross-platform oil and gas exploration data access and visualization method, including the following steps:

[0056] S1. Create a function encapsulation container class FuncHolder for wrapping functions of any type; Figure 2 As shown, the function encapsulation container class FuncHolder is used to encapsulate or hold the passed function object, and then call the call method of the function encapsulation container class FuncHolder where the function needs to be called to achieve the purpose of holding the function object. The function encapsulation container class FuncHolder object can exist as a member variable or function parameter;

[0057] The specific process of this step is:

[0058] S11. Write the Invoker auxiliary class in the function encapsulation container class FuncHolder and the constructor of the function encapsulation container class FuncHolder;

[0059] Among them, the constructor of the function encapsulation container class FuncHolder is used to receive functions of any type as parameters and supports delayed function calls. The constructor is associated with an STL function object and holds the function passed in by the constructor by binding the static function apply of the Invoker auxiliary class. Among them, the parameters of the static function apply are the object of the function type, the object pointer of the calling function, the function parameter list and the return value. This function is responsible for calling the passed in function. At the same time, the function encapsulation container class FuncHolder also supports parameterless construction.

[0060] S12. Write a call method of the function encapsulation container class FuncHolder, so that the interface of the function encapsulation container class FuncHolder supports variable parameter template parameters, and define the return value of the interface of the function encapsulation container class FuncHolder and the return specified type;

[0061] S2. Create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder;

[0062] like Figure 3 and Figure 4 As shown, this step is to simplify the acquisition and setting of properties. The specific process is:

[0063] S21. Creating a property node class Property Node and its derived classes, and a node creation class Property Node Creator based on the function encapsulation container class FuncHolder. The derived classes of the property node class Property Node are used to process parameters of properties of different data types. The node creation class Property Node Creator is used to create different property node classes Property Node or their derived classes based on the data type.

[0064] In this step, the Property Node class represents a property. The property includes the property name, property value, and sub-property list. The property name is a string, and the property value is a value or range of a data type. Data types include integers, floating-point numbers, strings, drop-down lists, colors, fonts, and so on.

[0065] Attributes can be created through attribute node objects. Attribute node objects can set attribute name, attribute value, whether the attribute is visible, whether the attribute is available, whether the attribute is editable, prompts, status bar prompts and other information;

[0066] The derived classes of the Property Node class are used to process the parameters of attributes of different data types. For example, for an attribute whose data type is an integer, it is often necessary to set its upper and lower limits in the display interface. Therefore, derived types are indispensable. In addition, attributes can also contain sub-attributes, and sub-objects need to be aggregated in the attribute class.

[0067] S22. Create a property value class Property Node Data, which is used to set the value of the property and return the value of the property;

[0068] In this step, since the Property Node class includes the setting and getting of property values, and property values ​​need to support various data types, the Property Node Data class needs to include template functions for setting and returning property values.

[0069] S23. Create the property data base class Property Base. The property data base class Property Base serves as the property management class, responsible for defining the property list, updating the property value, processing the property change, and managing the property processing interface class PropertyHandler. This class needs to be derived when using this module for development.

[0070] The specific process of this step is:

[0071] S231, creating an attribute list, for the underlying GUI module to create an attribute object supported by the underlying GUI module for each attribute node object according to the attribute list;

[0072] S232, updating the property value, used to initialize or refresh the property value. The underlying GUI module can initialize or update the property value of the property node object created in the property data class Property Base according to the property value of each property node object;

[0073] S233, managing the attribute processing interface, used to notify the attribute visualization module in the attribute processing interface when the attribute node object in the underlying GUI module is modified;

[0074] S24. Create a property item structure class Property Item, where the property item structure class Property Item includes the property type, the property name, the property set method, the property get method, and a sub-property list;

[0075] The specific process of this step is:

[0076] Macro registration (the macro parameters are the property data type, property name, property set method, and property get method) is used to generate a Property Item object list. Property nodes are then created based on the Property Item object list, and then property node objects of the underlying GUI module are created based on the property nodes. The property get and set methods are implemented using a function encapsulation container class that accepts function parameters of any type and supports delayed function calls. Generating the Property Item structure through macros can further reduce developer coding, as developers no longer need to create the Property Node class.

[0077] S25. Create a property entity class Property Entry;

[0078] In this step, the property entity class Property Entry includes a collection of property item structure classes Property Item and a pointer to the property entity class Property Entry; the property data base class Property Base relies on the property entity class Property Entry to traverse the property item structure class Property Item object list to create properties;

[0079] Since the attribute entity class Property Entry contains the pointer of the attribute entity class Property Entry, when creating an attribute node, it will first find the attribute entity class Property Entry object of the base class object, obtain the attribute item structure class Property Item list of the base class object to create the attribute node, and then find its own attribute item structure class Property Item list to create it, thus realizing the inheritance creation of the attribute;

[0080] S26. Create a property handling interface class Property Handler and its derived classes based on the property item structure class Property Item and the property entity class Property Entry. Aggregate a list of property handling interface classes Property Handler in the property data base class Property Base. Find the corresponding property handling interface class PropertyHandler derived class based on the data type and call the corresponding interface of the derived class.

[0081] S27. In combination with steps S24 to S26, add a property entity class Property Entry object to the property data base class Property Base, and add functions for creating a property node class Property Node list based on the property item structure class PropertyItem list in the property entity class Property Entry, updating property node values, and responding to property changes;

[0082] In this step, create a Property Node list based on the Property Item list in the Property Entry class. The specific process is as follows:

[0083] According to the Property Item list in the Property Entry class, the corresponding Property Handler class is found using a key-value pair method based on the data type of the Property Item structure class. In the Property Handler class, the Property Node Creator class for creating nodes of the corresponding data type is called to create a Property Node list.

[0084] Update attribute node values ​​and respond to attribute changes. The specific process is as follows:

[0085] According to the data type of the property item structure class Property Item, the corresponding property processing interface class Property Handler is found using the key-value pair method, and the corresponding function of the property update or property change interface processing is called in the property processing interface class Property Handler;

[0086] S28. Create an adapter associated with the underlying GUI module. The adapter aggregates a PropertyBase object, creates corresponding properties in the underlying GUI module and sets property values ​​based on the PropertyNode list provided by the PropertyBase class. It processes property changes in the underlying GUI module and passes the changes to the PropertyBase interface for processing property changes.

[0087] S29, summarizing steps S21 to S28 into an independent dynamic library module, namely, an attribute visualization module;

[0088] S3. Apply the attribute visualization module to Geobasemap, the base map software of GeoEast, a seismic data processing and interpretation system, to achieve data access and visualization.

[0089] like Figure 5 and Figure 6 As shown in the following example, in Geobasemap, the basemap software for GeoEast's seismic data processing and interpretation system, any data displayed on the basemap, such as work areas, horizons, and wells, exists as layers or primitives within the basemap software. To browse and edit the properties of these layers or primitives, derive from the property data class PropertyBase, then write get and set methods for each property and register them using macros. This greatly simplifies the development of this functionality, and the underlying GUI module is completely transparent to the user.

[0090] In addition to providing a visual display of attributes, it also supports attribute association and refresh functions. When an attribute item is associated with other attributes, if you modify this attribute, the other attributes can also be linked. The implementation of such functions does not require additional processing, only the relationship between attribute data needs to be processed.

[0091] Example 2 A cross-platform oil and gas exploration data access and visualization device

[0092] like Figure 7 As shown, the present invention also provides a cross-platform oil and gas exploration data access and visualization device, comprising:

[0093] Function encapsulation container class module, used to create a function encapsulation container class FuncHolder that wraps any function;

[0094] The attribute visualization interface library module is used to create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder;

[0095] The data access and visualization module is used to apply the attribute visualization module to the base map software Geobasemap of the oil and gas exploration interpretation system to achieve data access and visualization.

[0096] Among them, Figure 8 As shown in the figure, the attribute visualization interface library module specifically includes:

[0097] The property node class module is used to create the property node class Property Node and its derived classes, and the node creation class Property Node Creator based on the function encapsulation container class FuncHolder. The derived classes of the property node class PropertyNode are used to process the parameters of attributes of different data types. The node creation class Property NodeCreator is used to create different property node classes Property Node or their derived classes based on the data type.

[0098] The attribute value class module is used to create the attribute value class Property Data. The attribute value class Property Node Data is used to set the value of the attribute and return the value of the attribute;

[0099] The attribute data base class module is used to create the attribute data base class Property Base. The attribute data base class Property Base serves as the attribute management class and is responsible for defining the attribute list, updating attribute values, processing attribute changes, and managing the attribute processing interface class Property Handler;

[0100] The property item structure class module is used to create the property item structure class Property Item. The property item structure class Property Item contains the property type, property name, property set method, property get method and sub-property list;

[0101] The property entity class module is used to create the property entity class Property Entry. The property entity class PropertyEntry includes a collection of property item structure classes Property Item and a pointer to the property entity class Property Entry. The property data base class Property Base relies on the property entity class Property Entry to traverse the property item structure class Property Item object list to create properties.

[0102] The property handling interface class module is used to create the property handling interface class Property Handler and its derived classes based on the property item structure class Property Item and the property entity class Property Entry. It aggregates the property handling interface class Property Handler list in the property data base class Property Base, finds the corresponding property handling interface class Property Handler derived class according to the data type, and calls the corresponding interface of the derived class.

[0103] The attribute function module is used to add an attribute entity class Property Entry object to the attribute data base class Property Base, and add the functions of creating an attribute node class Property Node list according to the attribute item structure class PropertyItem list in the attribute entity class Property Entry, updating the attribute node value and responding to attribute changes;

[0104] The adapter module is used to create an adapter associated with the underlying GUI module. The adapter aggregates a property data base class Property Base object, creates corresponding properties in the underlying GUI module and sets property values ​​according to the property node class Property Node list provided by the property data base class Property Base, processes property changes in the underlying GUI module, and passes them to the interface of the property data base class PropertyBase for processing property changes.

[0105] It should be noted that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art may still modify the technical solutions described in the above embodiments or replace some of the technical features therein with equivalents. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.

Claims

1. A cross-platform oil and gas exploration data access and visualization method, characterized in that: The following steps are involved: S1. Create a function encapsulation container class FuncHolder for wrapping functions of any type; S2. Create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder; S3. Apply the attribute visualization module to the base map software of the interpretation system to achieve data access and visualization; The specific process of step S2 includes: S21. Creating a property node class Property Node and its derived classes, and a node creation class Property Node Creator according to the function encapsulation container class FuncHolder. The derived classes of the property node class Property Node are used to process parameters of attributes of different data types. The node creation class Property Node Creator is used to create different property node classes Property Node or their derived classes according to the data type. S22. Create a property value class Property Node Data, where the property value class Property Node Data is used to set the value of a property and return the value of a property; S23. Create a property data base class Property Base. The property data base class Property Base serves as a property management class and is responsible for defining a property list, updating property values, processing property changes, and managing a property processing interface class PropertyHandler. S24. Create a property item structure class Property Item, wherein the property item structure class Property Item includes a property type, a property name, a property set method, a property get method, and a sub-property list; S25. Create a property entity class Property Entry, which includes a collection of property item structure classes Property Item and a pointer to the property entity class Property Entry; the property data base class Property Base relies on the property entity class Property Entry to traverse the property item structure class Property Item object list to create properties; S26. Create a property handling interface class Property Handler and its derived classes based on the property item structure class Property Item and the property entity class Property Entry. Aggregate a list of property handling interface classes Property Handler in the property data base class Property Base. Find the corresponding property handling interface class PropertyHandler derived class based on the data type and call the corresponding interface of the derived class. S27. Combined with steps S24 to S26, add a property entity class Property Entry object to the property data base class Property Base, and add functions for creating a property node class Property Node list based on the property item structure class PropertyItem list in the property entity class Property Entry, updating property node values, and responding to property changes; S28. Create an adapter associated with the underlying GUI module. The adapter aggregates a PropertyBase object, creates corresponding properties in the underlying GUI module and sets property values ​​based on the PropertyNode list provided by the PropertyBase class, processes property changes in the underlying GUI module, and passes the changes to the PropertyBase interface for processing property changes. S29. Summarize steps S21 to S28 into an independent dynamic library module, namely, an attribute visualization module.

2. The cross-platform oil and gas exploration data access and visualization method according to claim 1, characterized in that: The specific process of step S1 includes: S11. Write the Invoker auxiliary class in the function encapsulation container class FuncHolder and the constructor of the function encapsulation container class FuncHolder; The function encapsulation container class FuncHolder's constructor is used to receive any type of function as a parameter and supports delayed function calling. The constructor is associated with an STL function object and holds the function passed in by the constructor by binding the static function apply of the Invoker auxiliary class. S12. Write the call method of the function encapsulation container class FuncHolder, so that the interface of the function encapsulation container class FuncHolder supports variable parameter template parameters, and define the return value of the interface of the function encapsulation container class FuncHolder and the return specified type.

3. The cross-platform oil and gas exploration data access and visualization method according to claim 1, characterized in that: In step S21, the property node class Property Node represents a property, and the property includes the property name, property value and sub-property list.

4. The cross-platform oil and gas exploration data access and visualization method according to claim 1, characterized in that: The specific process of step S23 is: S231, creating an attribute list, for the underlying GUI module to create an attribute object supported by the underlying GUI module for each attribute node object according to the attribute list; S232: Update attribute value, used to initialize or refresh attribute value; S233. Manage the attribute processing interface, which is used to notify in the attribute processing interface when the attribute node object in the underlying GUI module is modified.

5. The cross-platform oil and gas exploration data access and visualization method according to claim 1, characterized in that: The specific process of step S24 is: Macro registration is used to generate a property item structure Property Item object list, and then a property node is created according to the property item structure Property Item object list, and then a property node object of the underlying GUI module is created according to the property node.

6. The cross-platform oil and gas exploration data access and visualization method according to claim 1, characterized in that: In step S27, a Property Node list of the attribute node class is created according to the Property Item list of the attribute item structure class in the attribute entity class Property Entry. The specific process is as follows: According to the property item structure class Property Item list in the property entity class Property Entry, through the data type of the property item structure class Property Item, the corresponding property processing interface class PropertyHandler is found in a key-value pair manner, and the node creation class Property Node Creator of the corresponding data type is called in the property processing interface class Property Handler to create a property node class Property Node list.

7. The cross-platform oil and gas exploration data access and visualization method according to claim 3, characterized in that: In step S27, the function of updating the attribute node value and responding to attribute changes is performed according to the attribute item structure class Property Item list in the attribute entity class Property Entry. The specific process is as follows: According to the data type of the property item structure class Property Item, the corresponding property processing interface class Property Handler is found using the key-value pair method, and the corresponding function of its own property update or property change interface is called in the property processing interface class Property Handler.

8. A cross-platform oil and gas exploration data access and visualization device, used to implement the cross-platform oil and gas exploration data access and visualization method according to any one of claims 1 to 7, characterized in that: include: Function encapsulation container class module, used to create a function encapsulation container class FuncHolder that wraps any function; The attribute visualization interface library module is used to create an attribute visualization module for attribute creation and attribute editing based on the function encapsulation container class FuncHolder; The data access and visualization module is used to apply the attribute visualization module to the base map software of the oil and gas exploration interpretation system to achieve data access and visualization.

Citation Information

Patent Citations

  • Spatial clustering mining PSE (Problem Solving Environments) system and construction method thereof

    CN102360377A

  • Visual UI style design method and system

    CN112099792A