Drawing method, electronic equipment and storage medium
By isolating business data processing from graphics rendering in 3D rendering software, and using processing functions to process business data and transmit it to the graphics engine for rendering, the problem of poor portability during the migration of graphics engines in existing technologies is solved, achieving greater applicability and flexibility.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-05
- Publication Date
- 2026-03-13
Smart Images

Figure CN121661211A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this application relate to the field of computer technology, and more specifically, to a drawing method, an electronic device, and a storage medium. Background Technology
[0002] To improve user experience, many vehicles are starting to use 3D rendering software for drawing. Typically, vehicle control data is transmitted to the 3D rendering software, which then processes and renders the data according to pre-set processing logic.
[0003] However, in the above method, the migration of the 3D rendering software is affected because the 3D rendering software integrates data processing logic specific to the current project. Summary of the Invention
[0004] The embodiments of this application provide a drawing method, electronic device, and storage medium that can at least partially solve the above-mentioned or other problems existing in the prior art.
[0005] One aspect of this application provides a drawing method, comprising: processing business data through a processing function corresponding to the business data; transmitting the processed business data to a graphics engine; and drawing graphics through the graphics engine.
[0006] Another aspect of this application provides an electronic device including at least one processor and a memory. The memory is communicatively connected to the at least one processor and stores instructions executable by the at least one processor. The instructions are executed by the at least one processor to enable the at least one processor to perform the drawing method mentioned above.
[0007] Another aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the drawing method mentioned above.
[0008] According to one embodiment of the drawing method, electronic device, and storage medium provided in this application, the part of the execution body used for business data logic processing is separated from the graphics engine. The business data is processed by the processing function corresponding to the business data, and the graphics engine performs graphics drawing (or screen rendering). Because the processing of business data is isolated from graphics drawing, the graphics engine can be better applied to more projects and has stronger portability.
[0009] In some embodiments of this application, the drawing method further includes: registering callback functions for the business according to a configuration file. The configuration file includes business middleware for the business, and the business middleware includes callback function classes for the business. The step of transmitting the processed business data to the graphics engine mentioned above may include the following sub-steps: transmitting the processed business data to the graphics engine based on the callback functions of the business corresponding to the business data.
[0010] In some embodiments of this application, the configuration file also includes business processing functions. The step of processing business data using the processing functions corresponding to the business data may include the following sub-steps: determining the configuration file corresponding to the business data; and processing the business data using the processing functions in the configuration file.
[0011] In some embodiments of this application, the processing function includes a vehicle control processing function, which includes functions for displaying the status of vehicle components on the screen.
[0012] In some embodiments of this application, the processing function includes a driving assistance processing function, which includes a function for displaying vehicle driving assistance information on the screen.
[0013] In some embodiments of this application, the service data is CAN bus data. The drawing method further includes the following steps: determining the service corresponding to the CAN data based on the data definition rules corresponding to the vehicle model information; and determining the processing function corresponding to the CAN data based on the service corresponding to the CAN data.
[0014] In some embodiments of this application, the graphics engine includes graphics drawing function modules corresponding to different services. The step of transmitting processed service data to the graphics engine may include the following sub-steps: transmitting the processed service data to the graphics drawing function module corresponding to the service corresponding to the CAN data.
[0015] In some embodiments of this application, the graphics engine is integrated into the desktop process. Attached Figure Description
[0016] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings. Wherein:
[0017] Figure 1 This is a schematic flowchart of a drawing method according to the first embodiment of this application;
[0018] Figure 2 This is a schematic flowchart of the drawing method according to the second embodiment of this application;
[0019] Figure 3This is a schematic diagram of the framework of the software processing module within the execution body according to the embodiments of this application;
[0020] Figure 4 These are schematic block diagrams of electronic devices according to some embodiments of this application. Detailed Implementation
[0021] To better understand this application, various aspects of this application will be described in more detail with reference to the accompanying drawings. It should be understood that these detailed descriptions are merely illustrative of exemplary embodiments of this application and are not intended to limit the scope of this application in any way. Throughout the specification, the same reference numerals refer to the same elements. The expression "and / or" includes any and all combinations of one or more of the associated listed items.
[0022] It should also be understood that expressions such as "comprising," "including," "having," "containing," and / or "comprising" are open-ended rather than closed-ended expressions in this specification, indicating the presence of the stated features, elements, and / or components, but not excluding the presence of one or more other features, elements, components, and / or combinations thereof. Furthermore, when expressions such as "at least one of..." appear after a list of listed features, they modify the entire list of features, not just individual elements in the list. Additionally, when describing embodiments of this application, the word "may" is used to mean "one or more embodiments of this application." And the term "exemplary" is intended to refer to examples or illustrations.
[0023] Unless otherwise specified, all terms used herein (including engineering and technical terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains. It should also be understood that, unless expressly stated herein, terms defined in common dictionaries shall be interpreted as having the meaning consistent with their meaning in the context of the relevant art, and not as having an idealized or overly formalized meaning.
[0024] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. Furthermore, unless explicitly limited or contradicted by the context, the specific steps included in the methods described in this application are not limited to the order in which they are described, but can be performed in any order or in parallel. This application will now be described in detail with reference to the accompanying drawings and embodiments.
[0025] Figure 1 This is a schematic flowchart of a drawing method according to a first embodiment of this application. This drawing method 100 can be used in electronic devices, such as vehicle mainframes. Figure 1 As shown, the drawing method 100 may include the following steps:
[0026] Step 101: Process the business data using the processing function corresponding to the business data.
[0027] In this embodiment, the execution entity deploys processing functions for different business data. In other words, some parts of the graphics engine used for business data logic processing are separated from the graphics engine. After receiving a certain business data, the execution entity calls the processing function corresponding to that business data to process it.
[0028] Step 102: Transmit the processed business data to the graphics engine and then use the graphics engine to draw the graphics.
[0029] In this embodiment, after the processing function completes the processing of the business data, the execution entity transmits the processed business data to the graphics engine. The graphics engine then performs graphics rendering based on the processed business data.
[0030] In some embodiments of this application, the part of the execution entity used for business data logic processing is separated from the graphics engine. The business data is processed by the processing function corresponding to the business data, and the graphics engine performs graphics drawing (or screen rendering). Because the processing of business data is isolated from graphics drawing, the graphics engine can be better applied to more projects and has stronger portability.
[0031] Figure 2 This is a flowchart illustrating a drawing method according to a second embodiment of this application. This embodiment is largely the same as the first embodiment, the main difference being that it exemplarily describes the process of transmitting processed business data to a graphics engine. For example... Figure 2 As shown, the drawing method 200 may include the following steps:
[0032] Step 201: Register the callback function for the business according to the configuration file.
[0033] In this embodiment, the execution entity can load configuration files for different services. Each service's configuration file may include its own service middleware. This middleware may include callback function classes for the service. The execution entity can register the service callback functions in the graphics engine based on these callback function classes, so that after the execution entity calls the service's data processing function, the graphics engine can perceive this and perform graphics rendering based on the processed service data.
[0034] Step 202: Process the business data using the processing function corresponding to the business data.
[0035] In this embodiment, after receiving the business data, the executing entity calls the processing function corresponding to the business data to process the business data.
[0036] Optionally, the configuration file for a business function may also include the corresponding processing function. The process by which the executing entity processes the business data using the processing function may include: determining the configuration file corresponding to the business data; and processing the business data using the processing function in the configuration file. For example, the executing entity can isolate different business data, associating different business data with different processing functions (i.e., function modules) one-to-one, achieving one processing function for each piece of business data. This processing function is used to process the business data, and the processed business data is transmitted to the graphics engine through the business middleware.
[0037] Step 203: Based on the callback function of the business corresponding to the business data, the processed business data is transmitted to the graphics engine.
[0038] In this embodiment, after the graphics engine detects that the processing function for business data has been called, it can send the processed business data back to the graphics engine based on the callback function corresponding to the business, thereby realizing data transmission.
[0039] In some embodiments of this application, the processing function may be, for example, a logical processing function for business data of various services, and its existence in the execution entity may be in the form of various independent software sub-modules. For ease of understanding, the following uses a vehicle as the execution entity as an example to illustrate the processing function.
[0040] As an example, the processing functions include vehicle control processing functions, which include functions for displaying the status of vehicle components on the screen. For instance, the vehicle control processing functions can be used to display specific vehicle component statuses such as the left front door being open, the right front door being open, and the trunk being open in the graphics engine. For example, if the business data is vehicle component status data, the processing functions process the vehicle component status data to determine the corresponding status of the vehicle component and the parameters of the vehicle model corresponding to that status. The graphics engine then adjusts the status of that vehicle component in the vehicle model displayed on the screen based on the parameters of the vehicle model.
[0041] As another example, the processing functions include driver assistance processing functions, which include functions for displaying vehicle driver assistance information on the screen. These functions include features for displaying technologies such as Lane Departure Warning (LDW) and Lane Keeping Assist (LKA) on the graphics engine. For example, if the business data is lane departure warning data, which indicates that the vehicle is deviating from the designated lane, the processing function parses this information and determines the processed business data based on it. This processed business data instructs the graphics engine to draw a screen reminding the driver that the vehicle has deviated from the designated lane. After obtaining the processed business data, the graphics engine outputs the screen reminding the driver that the vehicle has deviated from the designated lane.
[0042] It should be understood that, without departing from the teachings of this application, the processing function may also include logical processing functions for data of other vehicle services, and this application does not impose any restrictions on this.
[0043] It should be understood that, without departing from the teachings of this application, the processing functions in different types of executing entities may be different, and the type of processing function may be determined according to the type of business that the executing entity needs to perform, without any restrictions here.
[0044] In some embodiments of this application, service data can be acquired and transmitted in various ways. For example, taking a vehicle as the executing entity, various service data can be transmitted to the vehicle's controller via a Controller Area Network (CAN) bus. This service data can be referred to as CAN data. Processing functions loaded within the vehicle's controller process the service data.
[0045] Alternatively, considering that the CAN data definition (CAN matrix) differs across development projects, some embodiments of this application define an interface for transmitting processed business data to the graphics engine, and adapt it for the CAN matrix of different vehicle models. This ensures that the graphics engine interface can be used to complete graphics engine-side development work without modification across multiple projects. For example, the execution entity can store data definition rules corresponding to different vehicle model information, i.e., the CAN data definition (CAN matrix) mentioned above. The execution entity can determine the business corresponding to the CAN data based on the data definition rules corresponding to the vehicle model information; based on the business corresponding to the CAN data, it can determine the processing function corresponding to the CAN data, and then use the processing function to process the CAN data to obtain the processed business data.
[0046] Step 204: Perform graphics drawing using a graphics engine.
[0047] In some embodiments of this application, after receiving the processed business data, the graphics engine can perform graphics drawing based on the processed business data.
[0048] Optionally, the graphics engine may include graphics drawing function modules corresponding to different services, that is, graphics drawing function modules are configured separately for different services. The process of the execution entity transmitting the processed service data to the graphics engine may include: transmitting the processed service data to the graphics drawing function module corresponding to the service corresponding to the CAN data (i.e., the service corresponding to the service data).
[0049] For example, if the executing entity is a vehicle, the processing functions include vehicle control processing functions and driver assistance processing functions. In this case, a schematic diagram of the software processing modules within the executing entity can be shown as follows: Figure 3 As shown. Figure 3 As shown, the vehicle stores data definition rules corresponding to different vehicle models, for example... Figure 3 The data definition rules for vehicle type A, vehicle type B, and vehicle type C are specified. If the vehicle controller receives service data from the CAN structure, it determines the corresponding data definition rule based on the vehicle model information. Based on the corresponding data definition rule and the service data, it determines whether the service data corresponds to vehicle control processing or driver assistance. If the service data corresponds to vehicle control, the vehicle controller (not shown) can call the vehicle control processing submodule 311, which contains the vehicle control processing function in the processing function module 310, to process the service data. The processed service data is then transmitted through the middleware 320 corresponding to the vehicle control service (i.e., vehicle control middleware 321) to the graphics drawing function submodule 331 in the graphics engine 330, which corresponds to the vehicle control service. The vehicle control graphics drawing submodule 331 then performs graphics drawing based on the processed service data. Responding to the fact that the business data corresponds to a driving assistance business, the vehicle controller (not shown) can call the driving assistance processing submodule 312, which contains driving assistance processing functions, in the processing function module 310 to process the business data. The processed business data is then transmitted through the middleware corresponding to the driving assistance business in the business middleware 320, namely the driving assistance middleware 322, to the graphics drawing function submodule corresponding to the driving assistance business in the graphics engine 330, namely the driving assistance graphics drawing submodule 332. The driving assistance graphics drawing submodule 332 performs graphics drawing based on the processed business data.
[0050] Optional, such as Figure 3 As shown, the above program module can be integrated into desktop process 340. It should be understood that the above program module can also be integrated into other application processes.
[0051] Based on the above implementation method, the graphics engine in the vehicle can focus on the graphical drawing (rendering) of the interactive interface without participating in the logical processing of business data. This makes the related code of the graphics engine more portable and reduces the amount of code modification required when porting the graphics engine to different projects. In addition, the business middleware and processing functions corresponding to different businesses are isolated from each other and can be packaged into different configuration files, which is beneficial for achieving business isolation.
[0052] It should be understood that, without departing from the teachings of this application, the modules corresponding to the various business operations within the implementing entity can be isolated at other granularities, and no restrictions are imposed here.
[0053] In some embodiments of this application, the graphics engine in the executing entity can be integrated into a suitable application based on the business scenario of the executing entity. For example, if the executing entity is a vehicle, considering that the images drawn by the vehicle's graphics engine are usually displayed on the desktop of the in-vehicle infotainment (IVI) system, the graphics engine can be integrated into the desktop (launcher) process. The desktop process subscribes to the required CAN messages to obtain business data. In response to the desktop process receiving the business data, it processes the business data through a processing function, and the processed business data is transmitted to the graphics engine. The screen drawn / rendered by the graphics engine is then added to the desktop.
[0054] According to some embodiments of this application, the part of the execution body used for business data logic processing is separated from the graphics engine. The business data is processed by the processing function corresponding to the business data, and the graphics engine performs graphics drawing (or screen rendering). Because the processing of business data is isolated from graphics drawing, the graphics engine can be better applied to more projects and has stronger portability.
[0055] For ease of understanding, the following example uses a vehicle as the executing subject to illustrate one implementation of the drawing method mentioned in some embodiments of this application.
[0056] As an example, in implementing the drawing methods mentioned in some embodiments of this application on a vehicle, the host process of the graphics engine can be determined first. For example, the vehicle's operating system is Android. Developers can integrate the graphics engine (e.g., an engine for 3D creation) into a suitable application according to business needs. This Android application receives multiple business data (i.e., the CAN data mentioned above) from the CAN bus, and the different data are split according to different business modules of the vehicle (e.g., vehicle control module, driver assistance module) to ensure isolation between data from different business modules.
[0057] For example, as mentioned above, considering that the images drawn by the vehicle's graphics engine are usually displayed on the desktop of the in-vehicle infotainment (IVI) system, the graphics engine can be integrated into the desktop (launcher) process. The desktop process subscribes to the necessary CAN messages to obtain service data. Upon receiving the service data, the desktop process processes the data through a processing function, and the processed service data is transmitted to the graphics engine. The graphics engine then draws / renders the image, which is added to the desktop.
[0058] After determining the host process of the graphics engine, a specific communication interface between Android and the graphics engine can be defined within the vehicle. In some technologies, the graphics engine communicates with the system and participates in the logical processing of business data. This leads to significant migration difficulties, requiring code modifications to the graphics engine's logical processing functions based on the business logic of the target project. In some embodiments of this application, the system parses the specific meaning of the business data and defines specific business interfaces for multiple sub-modules. The processed business data is then passed to the graphics engine, which receives the processed business data through this interface and completes the rendering of the user interface (UI) (graphics drawing) without performing logical processing. For example, the host process (such as the Launcher process) associates isolated business data from different business processes with sub-modules within different business modules, achieving a one-to-one correspondence between one business data and one sub-module. Each sub-module contains the processing function for the business data corresponding to that business. For example, a vehicle may include a vehicle control sub-module and a driver assistance sub-module. The vehicle control submodule contains vehicle control processing functions that display the status of specific vehicle components, such as the left front door, right front door, and trunk opening, in the graphics engine. The driver assistance submodule contains driver assistance processing functions that display vehicle driver assistance information on the screen.
[0059] Alternatively, considering that the CAN data definition (CAN matrix) is different in different development projects, some embodiments of this application may define the interface between Android and the graphics engine, and adapt it for the CAN matrix of different vehicle models, so as to ensure that the graphics engine interface can be completed without modification in multiple projects to complete the development work on the graphics engine side.
[0060] After completing the interface definition, a communication connection can be created between the in-vehicle system (Android system in this example) and the graphics engine. For example, middleware is created based on the concrete interface defined above to facilitate communication between Android and the graphics engine. The middleware transmits different business data to the corresponding modules on the graphics engine side.
[0061] For example, in some embodiments, different business middleware can be created based on different business requirements. This middleware can exist as a JAR file; for example, a middleware for driver assistance (adas_class.jar) and a middleware for vehicle control (car_control.jar) can be created. Separating different business requirements into different middleware achieves business isolation. Within each middleware, a callback function class can be defined. The graphics engine can register these callbacks so that when Android calls a function, the graphics engine can detect this and perform UI rendering based on the callback data.
[0062] It should be understood that different business functions require different middleware. Taking driver assistance services as an example, the implementation methods for left lane departure warning and right lane departure warning in the corresponding middleware are as follows:
[0063] public void LDWLeftWarning(Warning warningLevel){ / / Left lane departure warning function body;
[0064] this.sendMessageToUnity(new
[0065] BaseModel(CommandType.LDWLeftWarning,"data",
[0066] warningLevel.getValue(); / / Send the warning level of the left lane departure warning to the graphics engine;
[0067] }
[0068] public void LDWRightWarning(Warning warningLevel){ / / Right lane departure warning function body;
[0069] this.sendMessageToUnity(new
[0070] BaseModel(CommandType.LDWRightWarning,"data",
[0071] warningLevel.getValue(); / / Send the warning level of right lane departure warning to the graphics engine;
[0072] }
[0073] The two function bodies described above define the warning level function for lane departure warnings sent from the Android side to the graphics engine side, and pass the warning level (warminglevel) as the function's input parameter. This code is related to the driver assistance system and can be placed in `adas_class.jar`. Similarly, code related to vehicle control can be placed in `car_control.jar`.
[0074] In the embodiments of this application, the graphics engine can perform rendering work through the data carried by the middleware-specific functions without needing to perform data parsing. For example, the graphics engine, based on the Android Java Proxy, registers callbacks with the callback functions of the business middleware from different sub-modules mentioned above to receive processed business data. The graphics engine then obtains the specific function callback data (i.e., the processed business data) from the business middleware to complete the UI rendering.
[0075] As can be seen from the above examples, the drawing method mentioned in the embodiments of this application is applicable to driving assistance-related services, vehicle control-related services, etc., implemented on the Android platform based on graphics engine technology. In this drawing method, the graphics engine does not participate in logic processing and is mainly responsible for UI rendering, which improves the portability, single responsibility, and communication interface isolation of the graphics engine. Specifically, through the drawing method mentioned in the embodiments of this application, since the graphics engine is mainly responsible for UI processing, if the graphics engine is ported to other vehicle models, it can handle 3D model-related content without changing the communication interface and data format with Android. Only data adaptation on the Android side is required, which improves the portability of the graphics engine-related code. Because the graphics engine and Android communication are isolated by business logic, different businesses are separated into different business middlewares, and the callbacks received by the graphics engine are also business-specific, communication interface isolation is achieved.
[0076] The steps of the various methods described above are only for clarity. In implementation, they can be combined into one step or some steps can be split into multiple steps. As long as they include the same logical relationship, they are all within the protection scope of this disclosure. Adding insignificant modifications or introducing insignificant designs to the algorithm or process, but without changing the core design of the algorithm and process, are also within the protection scope of this disclosure.
[0077] Embodiments of this application also provide an electronic device, such as... Figure 4As shown, the electronic device 400 may include at least one processor and a memory. The memory is communicatively connected to the at least one processor and stores instructions executable by the at least one processor, which, when executed, enables the at least one processor to perform the drawing method mentioned in the above embodiments.
[0078] As an example, the electronic device could be the vehicle's main unit, i.e., the vehicle's controller. By executing this drawing method, the part used for business data logic processing is separated from the graphics engine. The business data is then processed by the corresponding processing functions, while the graphics engine performs the graphics rendering (or image rendering). Because business data processing is isolated from graphics rendering, the graphics engine can be better adapted to more projects and has greater portability.
[0079] One embodiment of this application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the drawing method mentioned in the above embodiments.
[0080] Figure 4 This is a schematic block diagram of an electronic device 400 according to some embodiments of this application. For example... Figure 4 As shown, the electronic device 400 includes a processor 401, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 402 or a computer program loaded from a memory 408 into a random access memory (RAM) 403. The RAM 403 may also store various programs and data required for the operation of the electronic device 400. The processor 401, ROM 402, and RAM 403 are interconnected via a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.
[0081] Multiple components in electronic device 400 are connected to I / O interface 405, including: input unit 406, such as buttons or a touchscreen in a vehicle infotainment system; output unit 407, connected to various types of displays, speakers, etc., to output various forms of signals; memory 408, including any medium for storing computer-executable programs; and communication unit 409, such as a network interface card (NIC), modem, or wireless transceiver. Communication unit 409 allows electronic device 400 to exchange information / data with other devices via a local area network (LAN) or other wireless communication networks.
[0082] Processor 401 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 401 performs the various methods and processes described above, such as the drawing methods mentioned in the above embodiments. For example, in some embodiments, the drawing methods mentioned in the above embodiments can be implemented as computer software programs tangibly contained in a computer-readable storage medium, such as memory 408. In some embodiments, part or all of the computer program can be loaded and / or installed on electronic device 400 via ROM 402 and / or communication unit 409. When the computer program is loaded into RAM 403 and executed by processor 401, one or more steps of the drawing methods mentioned in the above embodiments can be performed. Alternatively, in other embodiments, processor 401 can be configured to perform the drawing methods mentioned in the above embodiments by any other suitable means (e.g., by means of firmware).
[0083] Various aspects of this application have been described herein with reference to flowchart illustrations and / or timing diagrams of methods, apparatus (systems), and computer program products according to exemplary embodiments of this application. It should be understood that each step of the flowchart illustrations and / or timing diagrams, as well as combinations of steps in the flowchart illustrations and / or timing diagrams, can be implemented by computer-readable program instructions.
[0084] These computer-readable program instructions can be provided to a processor, general-purpose computer, special-purpose computer, or other programmable data processing unit in an electronic device to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing device, they create means for implementing the functions / steps specified in one or more steps of a flowchart and / or timing diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing device, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / steps specified in one or more steps of a flowchart and / or timing diagram.
[0085] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / steps specified in one or more steps of a flowchart and / or timing diagram.
[0086] The flowcharts and timing diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of devices, methods, and computer program products according to various embodiments of this application. In this regard, each step in a flowchart or timing diagram may represent a module, segment, or part of an instruction that contains one or more executable instructions for implementing a specified logical function. In some alternative embodiments, the functions indicated in the steps may occur in a different order than those indicated in the drawings. For example, two consecutive steps may actually be performed substantially in parallel, and they may sometimes be performed in reverse order, depending on the functions involved. It should also be noted that each step in a timing diagram and / or flowchart, and combinations of steps in timing diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0087] The above description is merely an illustration of the embodiments of this application and the technical principles employed. Those skilled in the art should understand that the scope of protection involved in this application is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the technical concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this application.
Claims
1. A drawing method, comprising: The business data is processed using the corresponding processing functions. The processed business data is transmitted to the graphics engine, and then the graphics are drawn using the graphics engine.
2. The method according to claim 1, further comprising: The configuration file is used to register the callback function of the business; the configuration file includes the business middleware of the business, and the business middleware includes the callback function class of the business. The step of transmitting the processed business data to the graphics engine includes: Based on the callback function of the business corresponding to the business data, the processed business data is transmitted to the graphics engine.
3. The method according to claim 2, wherein, The configuration file also includes processing functions for the business, wherein processing the business data using the processing functions corresponding to the business data includes: Determine the configuration file corresponding to the business data; The business data is processed using the processing functions in the configuration file.
4. The method according to claim 3, wherein, The processing function includes a vehicle control processing function, which includes functions for displaying the status of vehicle components on the screen.
5. The method according to claim 3, wherein, The processing function includes a driving assistance processing function, which includes functions for displaying vehicle driving assistance information on the screen.
6. The method according to any one of claims 1 to 5, wherein, The service data is CAN bus data, and the method further includes: Based on the data definition rules corresponding to the vehicle model information, determine the service corresponding to the CAN data; Based on the service corresponding to the CAN data, determine the processing function corresponding to the CAN data.
7. The method according to claim 6, wherein, The graphics engine includes graphics drawing function modules corresponding to different business functions, and the step of transmitting the processed business data to the graphics engine includes: The processed service data is transmitted to the graphics drawing function module corresponding to the service in the CAN data.
8. The method according to any one of claims 1 to 5, wherein, The graphics engine is integrated into the desktop process.
9. An electronic device, characterized in that, include: At least one processor; as well as, A memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method as described in any one of claims 1 to 8.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 8.