A data storage method for a vector scalable three-dimensional model

By splitting the 3D model into the smallest unit and storing it based on storage tags, the problem of large storage format and low compression ratio of 3D models is solved, achieving more efficient data storage and transmission.

CN114677262BActive Publication Date: 2025-12-16HANGZHOU TASHEN TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210188517.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-28
Publication Date
2025-12-16
Estimated Expiration
2042-02-28

AI Technical Summary

Technical Problem

The existing 3D model data storage format is large and has a low compression ratio, which affects the system's operating efficiency.

Method used

The method involves breaking down the 3D model into its smallest units and storing them based on storage tags. The storage space is expanded through pre-assembly and difference recognition features. The data storage space includes a data isolation area, a storage area, and a backup area, which respectively store the feature data of 3D points, vector lines, vector curves, and vector volumes.

Benefits of technology

It reduces the storage and transmission costs of 3D models and improves the efficiency of data storage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114677262B_ABST
    Figure CN114677262B_ABST
Patent Text Reader

Abstract

The application relates to a data storage method of a vector scalable three-dimensional model, wherein after a data storage space is constructed, a storage label item is configured, a new vector scalable three-dimensional model is input and is split into a plurality of minimum units, and an identification item of each minimum unit is obtained; all the data to be stored at present is pre-assembled, if a unique vector scalable three-dimensional model is obtained, storage is carried out in the data storage space based on the storage label item, otherwise, the plurality of vector scalable three-dimensional models after pre-assembling are subtracted, a difference value is identified, the feature is added to the data to be stored, the storage label item of the data storage space is expanded, and pre-assembling is carried out again. The application takes a three-dimensional vector point, a three-dimensional vector line, a three-dimensional vector curve and a three-dimensional vector body as basic elements, stores the basic elements and attributes, and directly constructs the basic elements into point and surface data for use according to the description of a file during rendering, so that the storage and transmission cost of the three-dimensional model is greatly reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of digital data processing, in particular to a data storage method of a scalable vector 3D model. BACKGROUND

[0002] Scalable Vector 3D Model, abbreviated as SV3DM, is a graphic format for describing two-dimensional vector graphics based on Extensible Markup Language, and its ultimate goal is to realize SVG model in three-dimensional form.

[0003] SVG mainly supports the following display objects:

[0004] Vector display objects, basic vector display objects include rectangles, circles, ellipses, polygons, straight lines, arbitrary curves, etc.; embedded external images including PNG, JPEG, SVG, etc.; text objects.

[0005] At present, in the 3D modeling application scene such as games, VR video, WEB3D and 3D map, the file transmission format is composed of point data, triangular surface data and map data. However, since the original SVG file complies with XML syntax, the data is stored in an uncompressed manner, so compared with other vector graphic formats, the same file content will be larger than other file formats, and when the file data increases, the memory occupation will be larger. Therefore, the existing three-dimensional data storage format is limited by the storage method, resulting in large file storage format and small compression ratio of the 3D model in use, which greatly affects the operation of the system. SUMMARY

[0006] The present application solves the problems existing in the prior art and provides an optimized data storage method of a scalable vector 3D model.

[0007] The technical scheme adopted by the present application is a data storage method of a scalable vector 3D model, which comprises the following steps:

[0008] Step 1: constructing a data storage space and configuring a storage tag item;

[0009] Step 2: inputting a new scalable vector 3D model into the data storage space and splitting it into a plurality of minimum units;

[0010] Step 3: obtaining the identification item of each minimum unit;

[0011] Step 4: pre-assembling all the data to be stored, if a unique scalable vector 3D model is obtained after pre-assembling, storing it in the data storage space based on the storage tag item, and returning to step 2, otherwise proceeding to the next step;

[0012] Step 5: Difference is made to the pre-assembled plurality of vector scalable three-dimensional models, features are identified from the difference, the features are added to the data to be stored, the storage tag items of the expanded data storage space are expanded, and step 4 is returned.

[0013] Preferably, in step 1, the constructed data storage space includes a data isolation area, a data storage area, and a data backup area; the storage tag items configured in the data storage area include three-dimensional points, three-dimensional vector straight lines and / or vector curves, three-dimensional vector bodies and other features, and a plurality of storage subspaces are provided under each storage tag item.

[0014] Preferably, the data backup area is a mirror of the data storage area.

[0015] Preferably, in step 2, the three-dimensional points are taken as the smallest unit, and the vector scalable three-dimensional model is split from the end point.

[0016] Preferably, in step 3, the split three-dimensional points are acquired, and the spatial information of the three-dimensional points is recorded as identification items.

[0017] Preferably, for any independent three-dimensional point, the spatial information includes its three-dimensional spatial coordinates (x, y, z).

[0018] Preferably, a plurality of three-dimensional points establish a three-dimensional vector straight line and / or a vector curve.

[0019] The spatial information of the three-dimensional vector straight line and / or the vector curve includes the spatial information of a plurality of three-dimensional points, and any three-dimensional point is matched to set a corresponding three-dimensional vector straight line and / or a vector curve line type.

[0020] Preferably, a plurality of three-dimensional points, three-dimensional vector straight lines and / or vector curves, and corresponding surface formulas construct a three-dimensional vector body; the spatial information of the three-dimensional vector body includes the spatial information of a plurality of corresponding three-dimensional points, and the line type of the corresponding three-dimensional vector straight line and / or vector curve.

[0021] Preferably, the identification items further include color values, cross-sectional patterns, transparency, and matrix changes.

[0022] Preferably, for any vector scalable three-dimensional model:

[0023] The three-dimensional points are stored;

[0024] A chain structure is created between a plurality of three-dimensional points involved in any three-dimensional vector straight line and / or vector curve, and a feature item is configured;

[0025] A chain structure is created between a plurality of three-dimensional points involved in a three-dimensional vector body and a plurality of three-dimensional points associated with a three-dimensional vector straight line and / or a vector curve, a feature item is configured, and a surface formula is configured.

[0026] The application provides a data storage method of an optimized vector scalable three-dimensional model, a storage tag item is configured after a data storage space is constructed, a new vector scalable three-dimensional model is input to the data storage space, is split into a plurality of minimum units and an identification item of each minimum unit is obtained; all the data to be stored at present is pre-assembled, if a unique vector scalable three-dimensional model is obtained after pre-assembly, storage is performed in the data storage space based on the storage tag item, otherwise, the plurality of vector scalable three-dimensional models after pre-assembly are subtracted, a difference value is identified, the feature is added to the data to be stored, the storage tag item of the data storage space is expanded, and pre-assembly is performed again.

[0027] The application has the beneficial effect that three-dimensional vector points, three-dimensional vector lines, three-dimensional vector curves and three-dimensional vector bodies are used as basic elements, the basic elements and the attributes of the elements are stored, and the basic elements can be directly constructed into point and surface data for use according to the description of a file during rendering, so that the storage and transmission cost of a three-dimensional model is greatly reduced. BRIEF DESCRIPTION OF DRAWINGS

[0028] Figure 1 The application is described in detail below with reference to the accompanying drawings. DETAILED DESCRIPTION

[0029] The application is described in detail below with reference to the accompanying drawings.

[0030] The application relates to a data storage method of a vector scalable three-dimensional model, and the method comprises the following steps:

[0031] Step 1: constructing a data storage space and configuring a storage tag item;

[0032] In the step 1, the constructed data storage space comprises a data isolation area, a data storage area and a data backup area; the storage tag item configured in the data storage area comprises three-dimensional points, three-dimensional vector straight lines and / or vector curves, three-dimensional vector bodies and other features, and a plurality of storage subspaces are arranged under each storage tag item.

[0033] The data backup area is a mirror image of the data storage area.

[0034] In the application, the data storage space is divided into the data isolation area, the data storage area and the data backup area, wherein the data isolation area is used for processing and splitting the input vector scalable three-dimensional model, the content after splitting is stored in the data storage area, and the data backup area is a mirror image of the data storage area, so that data backup is performed, and the safety and availability of the data are ensured.

[0035] In the present application, the data storage area stores feature data including but not limited to three-dimensional points, vector straight lines and / or vector curves, three-dimensional vector bodies and other features; for example, different three-dimensional point information is stored in a first storage subspace under a storage label item of three-dimensional points, and information or associated information of three-dimensional points constructing each three-dimensional line is stored in a second storage subspace under a storage label item of three-dimensional lines, which is used for integrating the three-dimensional point information of the first storage subspace into the second storage subspace or directly pointing and concatenating by a pointer, so as to ensure the reduction of data volume; by analogy, a third storage subspace under a storage label item of three-dimensional vector bodies can be obtained by using one or more three-dimensional points and corresponding pointers.

[0036] Step 2: inputting a new vector scalable three-dimensional model into the data storage space and splitting the vector scalable three-dimensional model into a plurality of minimum units;

[0037] In the step 2, the three-dimensional points are used as the minimum units to split the vector scalable three-dimensional model from an end point.

[0038] In the present application, the feature of the three-dimensional point is the simplest, and the main spatial information thereof is only the three-dimensional space coordinates, so that the three-dimensional point is easier to obtain and control.

[0039] Step 3: obtaining an identification item of each minimum unit;

[0040] In the step 3, the split three-dimensional points are obtained, and the spatial information of the three-dimensional points is recorded as the identification item.

[0041] For any independent three-dimensional point, the spatial information includes the three-dimensional space coordinates (x, y, z) thereof.

[0042] A plurality of three-dimensional points construct a three-dimensional vector straight line and / or a vector curve;

[0043] The spatial information of the three-dimensional vector straight line and / or the vector curve includes the spatial information of the plurality of three-dimensional points, and any three-dimensional point is matched to set a corresponding three-dimensional vector straight line and / or a vector curve line type.

[0044] A plurality of three-dimensional points, three-dimensional vector straight lines and / or vector curves and corresponding surface formulas construct a three-dimensional vector body; the spatial information of the three-dimensional vector body includes the spatial information of the corresponding plurality of three-dimensional points and the line type of the corresponding three-dimensional vector straight lines and / or vector curves.

[0045] The identification item further includes a color value, a cross-sectional pattern, a transparency and a matrix change.

[0046] In the present application, three-dimensional points are basic units, which are composed of x, y, and z attributes; three-dimensional vector lines are connected by several three-dimensional points, and the configurable identification items include but are not limited to color values, cross-sectional patterns (two-dimensional), transparency, and matrix changes; three-dimensional vector curves are actually realized by twice superposition of two-dimensional Bezier curves, so they inherit all other attributes and matrix changes of vector lines; and three-dimensional vector bodies are composed of more than four three-dimensional points to form multi-structure models, which are always kept in a closed state through a closing algorithm, and the configurable identification items include but are not limited to colors and matrix changes.

[0047] In the present application, each three-dimensional model is split into points / lines / planes, which are actually described by three-dimensional points / three-dimensional vector straight lines / vector curves respectively, and for three-dimensional vector bodies, corresponding surface formulas are matched to realize the description of each three-dimensional model in the smallest unit.

[0048] Step 4: Pre-assemble all the current data to be stored, if a unique vector scalable three-dimensional model is obtained after pre-assembling, store it in the data storage space based on the storage tag item, return to step 2, otherwise proceed to the next step;

[0049] Step 5: Subtract the pre-assembled multiple vector scalable three-dimensional models, identify the characteristics of the difference, add the characteristics to the data to be stored, expand the storage tag item of the data storage space, and return to step 4.

[0050] For any vector scalable three-dimensional model:

[0051] Store the three-dimensional points;

[0052] Create a chain structure between several three-dimensional points involved in any three-dimensional vector straight line and / or vector curve, and configure the characteristic items;

[0053] Create a chain structure between several three-dimensional points involved in a three-dimensional vector body and the three-dimensional points associated with three-dimensional vector straight lines and / or vector curves, and configure the characteristic items and surface formulas.

[0054] In the present application, the processed data is pre-assembled, if there is only one vector scalable three-dimensional model assembly result and it is correct, it is stored, otherwise it means that there is new characteristic content in the splitting process, which needs to be identified.

[0055] In the present application, the difference between the pre-assembled multiple vector scalable three-dimensional models is the unmarked characteristics, which are used to establish storage tag items as other characteristics and re-split.

[0056] In the present application, the rendering of the file only needs to reverse the spliced content of each split, such as a three-dimensional vector body, to obtain all associated three-dimensional points, three-dimensional vector straight lines and / or vector curves associated with three-dimensional points in the chain structure stored in the current storage tag item, determine the spatial position, restore the three-dimensional vector body with the configured feature item and surface formula, and obtain the final result.

Claims

1. A method of data storage for a vector scalable three-dimensional model, characterized by: The method comprises the following steps: Step 1: constructing a data storage space, configuring storage label items; the constructed data storage space comprises a data isolation area, a data storage area and a data backup area, the data isolation area is used for processing an input vector scalable three-dimensional model and splitting, the split content is stored in the data storage area, the data backup area is a mirror of the data storage area, and data backup is performed; The storage label items configured in the data storage area comprise three-dimensional points, three-dimensional vector straight lines and / or vector curves, three-dimensional vector bodies and other features, and a plurality of storage subspaces are provided under each storage label item; The first storage subspace under the storage label item of the three-dimensional point stores different three-dimensional point information, the second storage subspace under the storage label item of the three-dimensional line stores information or associated information of the three-dimensional points constructing each three-dimensional line, and the three-dimensional point information of the first storage subspace is integrated into the second storage subspace or directly pointed to and concatenated by a pointer, and the third storage subspace under the storage label item of the three-dimensional vector body corresponds to one or more three-dimensional points and corresponding pointers; Step 2: inputting a new vector scalable three-dimensional model into the data storage space, splitting into a plurality of minimum units; taking the three-dimensional point as the minimum unit, splitting the vector scalable three-dimensional model from the end point; a plurality of three-dimensional points establish a three-dimensional vector straight line and / or vector curve; a plurality of three-dimensional points, three-dimensional vector straight lines and / or vector curves and corresponding surface formulas construct a three-dimensional vector body; Step 3: obtaining an identification item of each minimum unit; Step 4: pre-assembling all the data to be stored, if a unique vector scalable three-dimensional model is obtained after pre-assembling, storing in the data storage space based on the storage label item, returning to step 2, otherwise, proceeding to the next step; Step 5: subtracting the plurality of vector scalable three-dimensional models after pre-assembling, identifying the features of the difference value, adding the features to the data to be stored, expanding the storage label items of the data storage space, and returning to step 4; For any vector scalable three-dimensional model: storing the three-dimensional points; creating a chain structure between a plurality of three-dimensional points involved in any three-dimensional vector straight line and / or vector curve, and configuring a feature item; creating a chain structure between a plurality of three-dimensional points involved in the three-dimensional vector body and the three-dimensional points associated with the three-dimensional vector straight line and / or vector curve, and configuring a feature item and a surface formula.

2. The method of claim 1, wherein: In step 3, the split three-dimensional points are obtained, and the spatial information of the three-dimensional points is recorded as the identification item.

3. The method of claim 2, wherein: For any independent three-dimensional point, the spatial information comprises three-dimensional space coordinates (x, y, z).

4. The method of claim 2, wherein: The spatial information of the three-dimensional vector straight line and / or vector curve comprises the spatial information of a plurality of three-dimensional points, and any three-dimensional point is matched to set a corresponding three-dimensional vector straight line and / or vector curve line type.

5. The method of claim 2, wherein: The spatial information of the three-dimensional vector body comprises the spatial information of a plurality of corresponding three-dimensional points and the line type of the corresponding three-dimensional vector straight line and / or vector curve.

6. A data storage method of a vector scalable three-dimensional model according to claim 4 or 5, characterized in that: The identification item further comprises a color value, a cross-sectional graph, a transparency and a matrix change.

Citation Information

Patent Citations

  • Three-dimensional vector object representation method based on two-dimensional SVG vector graphics in integrated circuit design tool

    CN105320783A