CN109410332A - Three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface - Google Patents
Three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface Download PDFInfo
- Publication number
- CN109410332A CN109410332A CN201811083741.5A CN201811083741A CN109410332A CN 109410332 A CN109410332 A CN 109410332A CN 201811083741 A CN201811083741 A CN 201811083741A CN 109410332 A CN109410332 A CN 109410332A
- Authority
- CN
- China
- Prior art keywords
- vertex
- triangle
- weight
- array
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
The invention discloses a kind of space three-dimensional geometry dummy model method of cutting out based on point-line-surface.The attribute of three-dimensional space geometry dummy model is separated from overall structure first, search the structure on the vertex, line and face in model with shared property, it is shared that texture is shared to from position, they are marked in data handling, after the mapping processing of association triangle is completed on all vertex, the adjacent triangle gridding information an of model is got by the triangle that surrounding is bordered on therewith;By model global grid information, each weighted index is calculated, obtains importance of the point-line-surface in the region in global grid model.The lower region of importance is deleted or simplified, region of high importance is retained.This method can limit the hierachy number and complexity of cutting, i.e., do not influence visual observation effect, while can guarantee that system is normally carried out the constructing function of model, take into account the validity and stability of model rendering process.
Description
Technical field
The invention belongs to three-dimensional space modeling technique fields, more particularly, to a kind of three-dimensional space based on point-line-surface
Geometry dummy model level of detail method of cutting out.
Background technique
Three-dimensional space model rendering is not to carry out the same set on machine from inside to outside according to entity itself
Meter, in general we are the similar shape wire frames for designing object, carry out the attachment of texture, material and textures on its surface, no
Pipe is that color, illumination or floral designs are all to show on model in this way.Texture, material and textures are in fact essential
Upper and picture has no essential distinction, but they are specific to threedimensional model and design, and wherein pixel can project to screen
Pixel in curtain space, so that realistic just as sticking image.
Since that time that dimensional Modeling Technology is born, the problem of how faster drawing and render, is just following.From
The central processing unit (Central Processing Unit, CPU) and graphics processor (Graphics of bottom hardware
Processing Unit, GPU) efficient calculating, to the graphic plotting algorithm of middle layer graphic package, then arrive top layer application software
Various Rendering, have great performance optimization space, can adapt to be adapted to different draw in different allocation of computer
Algorithm processed, and it is adapted to different scene renderings.
Other than longitudinal optimizing factors of above-mentioned computer graphical level, the horizontal optimization of Project-developing time shaft is also weight
One of factor wanted.Performance optimization cannot carry out again after the modeling of three-dimensional space geometry dummy model and animation effect are completed,
It is on the other hand exactly that can not be accurately positioned to lead to model resource because will lead to a large amount of work in this way to overstock in optimization program
The low position of operational efficiency, in this way investigation get up to consume the too many time.It must propose the small of each step of follow-up project
Type prioritization scheme, and it is able to carry out the large-scale optimization scheme of last scene integrated treatment.
Currently, common three-dimensional space geometry dummy model trimming algorithm has side to shrink level of detail algorithm, second order error
Metric algorithm, CPU+GPU cooperation trimming algorithm etc..
Level of detail algorithm is shunk on side indicates the significance level on vertex using vertex weights, and vertex weights are according to model
The descending degree of appearance effects is ranked up, and will cut control influences in lesser range at one;The weight on vertex is deposited
Storage is in a subordinate ordered array, and array sequence is both cutting vertex order, and advantage is that algorithm is easily achieved, and it is fast to execute speed.
Being limited in that for level of detail algorithm is shunk on side, and only considered this factor of vertex, model is made of point-line-surface,
Only consider vertex cut can only preferable reserving model edge feature, for model entirety ornamental by larger
It influences.
Second order error metric algorithm is that the improvement of level of detail algorithm is shunk based on side, is considered during vertex merges
Error assessment, the evaluation are based primarily upon the mechanism of boundary constraint dough-kneading method vector, excellent using error matrix come memory error value
Point is all various aspects of model attributes considered, can reach preferable operational effect.The limitation of second order error metric algorithm exists
In the time for calculating error matrix consumption is very big, to carry out the matrix multiple of multiple higher-dimension, it is complicated that matrix negates the contour time
The operation of degree, it is longer for the time of model rendering.
CPU+GPU cooperation trimming algorithm is that CPU cooperates completion jointly with GPU, the data processing amount of adjustment CPU and GPU
Reach load balance, effectiveness both can be made to perform to maximum.Both the isomerism parallel for realizing CPU+GPU, need to coordinate
Clock cycle, computing capability, storage capacity, thread management etc..Advantage is to possess cluster grade and support and unifiedly calculate parallel to set
Standby framework (CUDA, Compute Unified Device Architecture) provides the parallel support of node level, and system is whole
Calculated performance is greatly improved, while can guarantee working well for operation again.The limitation of CPU+GPU cooperation trimming algorithm
It is, need to write CPU and GPU architecture, algorithm logic is extremely complex, is not easy to realize;Simultaneously because the algorithm relates to
And bottom hardware calculates, and often receives the influence of platform hardware type, does not have supportive extensively.
Summary of the invention
The above method fails to coordinate speed, effect, cross-platform and easy realization in three-dimensional space model rendering well
Problem.In order to overcome the above-mentioned deficiencies of the prior art, the present invention provides the three-dimensional space geometry dummy models based on point-line-surface
Level of detail method of cutting out, this method are cut based on the intrinsic dotted line surface properties of geometrical model in three-dimensional space, are not required to
It carries out intermediate conversion and is successfully applied to the virtual mould of three-dimensional space geometry in conjunction with the level of detail method of cutting out after improvement
The level of detail of type cuts problem.
When object is far from video camera the lower model of resolution ratio can be used, i.e., in level of detail algorithm description
Complexity is lower than prototype, but farther out due to distance, difference just seems subtle and invisible.How vision effect is not being influenced
The emphasis that threedimensional model complexity is always level of detail algorithm is reduced in the case of fruit.Since model is simplified, certain
The rendering speed that model can be improved in degree reduces the number of vertex and triangle number of rendering.
The present invention is based on the three-dimensional space geometry dummy model level of detail method of cutting out of point-line-surface, and the specific method is as follows:
(1) grid property splits and establishes Ordered indices list
By separation original mesh vertex attribute, method line attribute in vertex, lattice Face Map attribute, lattice face color attribute and
Triangle obtains triangle array corresponding to unlike material, each triangle number group is merged into different sub-grid arrays.
In order to which the Double Tops point lookup below can be carried out quickly and effectively, need to establish an orderly index list, orderly vertex
Index list is finally arranged with the ascending sequence of xyz.Orderly vertex index list finally with the D coordinates value on vertex,
According to x, y, the priority orders of z coordinate are arranged from small to large;Such as the coordinate value of a (2,5,7) and b (2,8,4) then a
Less than b, because of a.y <b.y.
(2) position shared attribute vertex and texture shared attribute vertex are searched
The system simplifies vertex, and mainly foundation is exactly: similar vertex is removed, independent vertices or important vertex are retained, if
There can be the common vertex in multiple sub-grids, illustrate that the vertex is shared with various material, belong to important vertex, them
It finds out, by each vertex of traversing triangle array, finds out sub-grid and vertex coexists;Pass through the apex coordinate that will require look up
Incoming Ordered indices list is traversed, and identical vertex index is found out.Here sub-grid coexists in vertex and ordered list
It is common index be exactly position shared attribute vertex and texture shared attribute vertex.
(3) association triangle array and adjacent triangle array are established
There are many triangles to share on each vertex, obtains the subsequent algorithm of these triangle pairs and plays a key effect, and three
Angular array value is exactly the index on vertex, and identical index is merged.
Since three angles of each triangle are there are many adjacent triangle, a upper method only by each vertex and
Related triangle subscript is mapped, but there is no specific triangle array is extracted according to vertex, this method is to a upper side
The supplement of method, for each vertex, by comparing x, y, z coordinate value, when a certain apex coordinate value of two triangles is equal
Illustrate that the two is adjacent triangle;So can be by obtaining triangle array of the vertex with all identical values to obtain
Some adjacent triangles, below calculate apex angle and and textures stretching when just need to use adjacent triangle.
Three vertex of current triangle are split, triangle sets associated by the first vertex is obtained, which is added to sky
Adjacent triangle array, the group is then added to traversing triangle group, unique group is arranged to this group of adjacent triangle group
Number, triangle sets associated by second and third vertex are obtained, if the triangle array has stepped through, abandon current obtain
Triangle the group is added to traversing triangle group, to this group of phase if it is not, being added to adjacent triangle array
Unique bank number is arranged in adjacent triangle sets.
(4) apex angle and weight are calculated
Each vertex is shared by many adjacent triangles in fact in grid, and the sum of these shared apex angles determines
The vertex is located at unique position in grid.And if be 0 degree, belong to simplified vertex;And if being 180 degree, the apex
In on Grid Edge;And if be 360 degree, which is in inside grid.The creation of adjacent side uses the vector difference on two vertex.
Using front adjacent triangle, the angled summation of institute can be obtained total degree, weight can be calculated by following formula:
Vertex_Weight=Sub_Vertex_Weight+1
Side_Weight+=Vertex_Weight*Area
Side_Weight+=Angle*Side_Length
Side_Weight+=Total_Angle*Area
Side_Weight+=(New-Old) * Total_Angle*Area
Wherein Vertex_Weight indicates the coordinate value weight, and Sub_Vertex_Weight indicates son vertex weight,
Side_Weight indicates that side right weight, Area indicate that the side corresponds to triangle area, and Angle indicates the angle on vertex on the side,
Side_Length indicates the edge lengths, and Total_Angle indicates that the side corresponds to triangular angles and New and Old indicate side folding
After prestack triangle variation (refer to the variation of Atria coordinate value, cause triangular angles and with area and other
Such as the variation of textures).
(5) triangle center is calculated away from weight
Vertex center is away from the vertex is referred at a distance from the center of net boundary frame, and usually we are with it come decision grid chart
Whether face produces offset, and triangle center compares edge contraction front and back away from distance of three vertex to center is equal to for convenience
Center away from difference, will not be compared caused by vertex as a certain be folded for empty phenomenon, this system is taken to calculate vertex
The mean center of associated triangle can calculate weight by following formula away from replacing the center on vertex itself away from value:
Weight1=(New-Old) * Normal
Weight2=(New-Old) * Total_Center_Distance
Side_Weight+=Weight1*Weight2
Wherein Weight1 indicates normal weight, and Normal indicates triangle normal value, Weight2 indicate center away from weight,
Total_Center_Distance indicates center away from value, other meaning of parameters of the same name are identical as the foregoing description.
(6) weight is calculated based on textures and area change
The textures array index split out within a grid is exactly the index on vertex, can not when we simplify grid
The evitable deformation for causing textures, but deformation is preferably minimized, three vertex of triangle are obtained, UV array is read and obtains
The mapping coordinates for taking three vertex ask triangle area and textures area, when three vertex of cycle detection merge two-by-two, triangle
The variation of shape area and the variation of textures area record each area value of front and back, power can be calculated by following formula
Weight:
Side_Weight+=Weight+ (New-Old) * Area
Side_Weight+=Weight+ (New-Old) * UV_Area
Wherein Weight indicates the original weight of folded edge, and UV_Area indicates textures area, other meaning of parameters of the same name are therewith
It is preceding described identical.
(7) importance is cut to choose
It is edge contraction processing first, edge contraction is to choose the minimum side of significance level in a triangle to be folded,
It will cause the merging on two vertex, calculated to simplify, be eventually merged into one of vertex, rather than recalculate new
Vertex coordinate.It is defined according to Atria side and Direct/Reverse, one shares six kinds of method for folding, that is, ∠ 1
→ ∠ 2 (first angle is folded towards second angle), 2 → ∠ of ∠ 1,1 → ∠ of ∠ 3,3 → ∠ of ∠ 1,2 → ∠ of ∠ 3,3 → ∠ of ∠ 2.
After completing edge contraction, new grid is re-created, while creating new grid all properties data, created new
The data such as normal, textures and color in vertical array and vertex attribute, and new summit is recorded, sentence if looped through
Whether each vertex of breaking is folded, and the vertical array after the completion of folding is added to the vertical array of new grid, completes folding
Mapping coordinates afterwards are added to the mapping coordinates of new grid, and the vertex color array after the completion of folding is added to the top of new grid
Point color array, records the vertex for being added to new grid.
It according to old grid intermediate cam shape and vertex relationship, is corresponded in new grid, three-dimensional space geometrical model grid
Triangle carries contacting between vertex and vertex, if not creating triangle, the elements such as model pinup picture texture just can not
It is normally attached on vertex, will cause the confusion of grid, each triangle of old triangle array is extracted, and more
Change its corresponding sub-grid subscript, judges whether three vertex have all been added to new grid (edge contraction), if it is true,
The triangle is added to new triangle array, while new group number is set and the group number is added to new triangle group number list,
Sub-grid decline is filled, a complete sub-grid array is formed.
Product below will be folded to remove for 0 triangle, simplify grid complexity, while by its corresponding grid subscript
Also it is removed, records the triangle of removal, its corresponding vertex, mapping coordinates, vertex color data are removed together, more
Vertex index corresponding to new triangle array.
When cutting higher level, video camera is very remote from model itself, the variation to grid subtlety
It can not discover, but area smaller portions often occupy very big ratio within a grid, removing will to rendering number of triangles
It reduces many.Removal excessively often will affect visual effect, so not merging with the empty deltic method of removal, in simplification
The parameter for needing to be separately provided the value before calculates high-level weight according to incoming value, to the progress time of new triangle array
It goes through, quadratures to each triangle of taking-up, the triangle sets gross area, number of triangles is determined and removed most according to incoming value
Large area traverses new triangle array, removes all triangles for being less than maximum area, removes corresponding to the triangle
Sub-grid subscript.
It creates new grid: front new data generated is uniformly subjected to grid drawing, new summit array overlay model top
Point array, new normal array overlay model normal array, the new sub-grid of new summit color array overlay model vertex color array
Subscript array overlay model sub-grid subscript array.
The present invention renders feature for three-dimensional space geometry dummy model, solves three based on three different levels of point-line-surface
Dimension space geometry dummy model renders problem.Compared with traditional geometrical model renders optimization method, side which is proposed
Method has reached the unification of easy implementation and high efficiency, and all calculate is only to the distance of model itself, area and length
Essential attribute carries out simple computation, just can achieve the effect that true to nature, and the cut-out simplified geometrical model of institute more approaches original mould
The appearance of type.The method of the present invention carries out weight calculation based on the most basic point-line-surface attribute of three-dimensional space geometry, calculates simply, easily
It is approached in realization and execution efficiency height, while with archetype appearance similarity degree, cutting ratio is big and does not lose moulding, simultaneously
This method is not related to bottom hardware calculating, can carry out cross-platform being employed without modification.
Detailed description of the invention
Fig. 1 is that the present invention is based on the three-dimensional space geometry dummy model level of detail method of cutting out flow charts of point-line-surface;
Fig. 2 is three-dimensional space geometry dummy model prototype of the invention;
Fig. 3 is three-dimensional space geometry dummy model grid prototype of the invention;
Fig. 4 is the shared label example of three-dimensional space geometry dummy model texture of the invention;
Fig. 5 is the shared label example in three-dimensional space geometry dummy model position of the invention;
Fig. 6 is three-dimensional space geometry dummy model first layer cutting effect figure of the invention;
Fig. 7 is three-dimensional space geometry dummy model second layer cutting effect figure of the invention;
Fig. 8 is three-dimensional space geometry dummy model third layer cutting effect figure of the invention;
Fig. 9 is the 4th layer of cutting effect figure of three-dimensional space geometry dummy model of the invention.
Specific embodiment
In order to make the objectives, technical solutions, and advantages of the present invention clearer, with reference to the accompanying drawings and embodiments, right
The present invention is further elaborated.It should be appreciated that the specific embodiments described herein are merely illustrative of the present invention, and
It is not used in the restriction present invention.As long as in addition, technical characteristic involved in the various embodiments of the present invention described below
Not constituting a conflict with each other can be combined with each other.
The present invention is based on the three-dimensional space geometry dummy model level of detail method of cutting out of point-line-surface, and this method flow chart is such as
Shown in Fig. 1, the specific implementation steps are as follows:
Step 1: by method line attribute, lattice Face Map attribute, lattice face in the original mesh vertex attribute of geometrical model, vertex
Color attribute and original triangle set are separated;One sequence array is established to the vertex set extracted, is built simultaneously
Vertical Ordered indices list;
Step 2: searching in model original mesh has texture shared attribute by the triangle sets in the first step
Vertex, and be marked;By the Ordered indices list in second step, searching in model original mesh has position is shared to belong to
Property vertex, and be marked;
Step 3: by establishing model net according to original vertices coordinate containing markd triangle sets in second step
Lattice are associated with triangle array;Model meshes adjacent three are established according to shared vertex or side by the association triangle array of front
Angular array;
Step 4: calculating the angle on each vertex according to calculation formula in (4) by adjacent triangle array in third step
It spends and and calculates weight;
Step 5: calculating each triangle according to calculation formula in (5) by adjacent triangle array in third step
Center away from and calculate weight;
Step 6: the textures and triangle area variation before and after being folded by judgement are calculated according to calculation formula in (6)
Dependence edge weight;
Step 7: all of above weight is added in the form of vectors, recycling if completing entire model and calculating terminates,
Otherwise the 4th step is jumped to;After end loop, by weight height carry out region important ratio compared with, the region high to importance into
Row retains, and insignificant or unessential region is cut, and completes to operate simplifying for entire complex model.
The present invention will be further described with reference to the accompanying drawings and examples.
In order to keep method of cutting out effect representative, the three-dimensional space geometry dummy model number of vertex of selection ten thousand grades with
On, while there are multiple sub-grids, archetype is as shown in Figure 2.
Step 1: by the gridding operation of archetype, as shown in figure 3, can be by the original mesh top of geometrical model
Attribute is put, method line attribute, lattice Face Map attribute, lattice face color attribute and original triangle set are extracted and isolated in vertex
Come;
Step 2: searching in model original mesh has texture shared attribute by the triangle sets in the first step
Vertex, as shown in figure 4, and being marked;By the Ordered indices list in second step, having in model original mesh is searched
Position shared attribute vertex, as shown in figure 5, and being marked;
Step 3: by establishing model net according to original vertices coordinate containing markd triangle sets in second step
Lattice are associated with triangle array;Model meshes adjacent three are established according to shared vertex or side by the association triangle array of front
Angular array;
Step 4: calculating the angle on each vertex by adjacent triangle array in third step and and calculating weight.By
There is 24222 vertex, 19712 triangles, 6 sub-grids, Vertex_Weight, Angle and Total_ in the model
Angle is the ordered series of numbers with 24222 length;Sub_Vertex_Weight has the ordered series of numbers of 6 length;Side_Weight and
Area is the ordered series of numbers of matched triangle number length:
Vertex_Weight [24222]=Sub_Vertex_Weight [6]+1
Side_Weight [19712*3] +=Vertex_Weight [24222] * Area [19712]
Side_Weight [19712*3] +=Angle [24222] * Side_Length [19712*3]
Side_Weight [19712*3] +=Total_Angle [24222] * Area [19712]
Side_Weight [19712*3] +=(New-Old) * Total_Angle [24222] * Area [19712]
Step 5: by adjacent triangle array in third step, calculate the center of each triangle away from and calculate weight,
Normal and Total_Center_Distance is related to triangle sum:
Weight1=(New-Old) * Normal [19712]
Weight2=(New-Old) * Total_Center_Distance [19712]
Side_Weight [19712*3] +=Weight1*Weight2
Step 6: judgement folds textures and the triangle area variation of front and back, dependence edge weight is calculated, UV_Area is also
It is related to triangle sum:
Side_Weight [19712*3] +=Weight+ (New-Old) * Area [19712]
Side_Weight [19712*3] +=Weight+ (New-Old) * UV_Area [19712]
Step 7: all of above weight is added in the form of vectors, recycling if completing entire model and calculating terminates,
Otherwise the 4th step is jumped to;After end loop, by weight height carry out region important ratio compared with, the region high to importance into
Row retains, and insignificant or unessential region is cut.
By the distance of observing and nursing, model simplification degree can be divided into 4 levels, that is, there are 4 observation models
Distance, with distance it is more and more remoter, the complexity of rending model reduces accordingly, and in general 4 levels are a comparisons
Suitable value, finally obtains effect as shown in Fig. 6~9, completes to operate simplifying for entire complex model.
As it will be easily appreciated by one skilled in the art that the foregoing is merely illustrative of the preferred embodiments of the present invention, not to
The limitation present invention, any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should all include
Within protection scope of the present invention.
Claims (8)
1. a kind of three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface characterized by comprising
Step 1: by method line attribute, lattice Face Map attribute, lattice face color in the original mesh vertex attribute of geometrical model, vertex
Attribute is separated with original triangle set, establishes a sequence array to the vertex set extracted, while foundation has
Sequence index list;
Step 2: searching in model original mesh has texture shared attribute by the triangle sets separated
Vertex, and be marked;And by the Ordered indices list, searching in model original mesh has position shared attribute top
Point, and be marked;
Step 3: containing markd triangle sets by described, according to original vertices coordinate, model meshes association triangle is established
Figurate number group;Model meshes adjacent triangle array is established according to shared vertex or side by the association triangle array;
Step 4: calculating the angle on each vertex by the adjacent triangle array and and calculating weight;
Step 5: by adjacent triangle array in third step, calculate the center of each triangle away from and calculate weight;
Step 6: folding textures and the triangle area variation of front and back by judgement, dependence edge weight is calculated;
Step 7: all of above weight is added in the form of vectors, region important ratio is carried out compared with right by weight height
The high region of importance is retained, and insignificant or unessential region is cut, and completes to grasp simplifying for entire model
Make.
2. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as described in claim 1, special
Sign is, calculated in the 4th step each vertex angle and and calculate weight specifically: utilize the adjacent triangle,
The angled summation of institute can be obtained total degree, and weight is calculated by following formula:
Vertex_Weight=Sub_Vertex_Weight+1
Side_Weight+=Vertex_Weight*Area
Side_Weight+=Angle*Side_Length
Side_Weight+=Total_Angle*Area
Side_Weight+=(New-Old) * Total_Angle*Area
Wherein Vertex_Weight indicates the coordinate value weight, and Sub_Vertex_Weight indicates son vertex weight, Side_
Weight indicates that side right weight, Area indicate that the side corresponds to triangle area, and Angle indicates the angle on vertex on the side, Side_
Length indicates the edge lengths, and Total_Angle indicates that the side corresponds to triangular angles and New and Old indicate edge contraction front and back
Triangle variation.
3. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 2, special
Sign is, calculated in the 5th step center of each triangle away from and calculate weight specifically: to calculate vertex correlation three
Angular mean center calculates weight by following formula away to replace the center on vertex itself away from value:
Weight1=(New-Old) * Normal
Weight2=(New-Old) * Total_Center_Distance
Side_Weight+=Weight1*Weight2
Wherein Weight1 indicates normal weight, and Normal indicates triangle normal value, Weight2 indicate center away from weight,
Total_Center_Distance indicates center away from value.
4. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 3, special
Sign is, dependence edge weight is calculated in the 6th step specifically: obtains three vertex of triangle, reads textures array and obtain
The mapping coordinates on three vertex ask triangle area and textures area, when three vertex of cycle detection merge two-by-two, triangle
The variation of area and the variation of textures area, record each area value of front and back, and calculate weight by following formula:
Side_Weight+=Weight+ (New-Old) * Area
Side_Weight+=Weight+ (New-Old) * UV_Area
Wherein Weight indicates the original weight of folded edge, and UV_Area indicates textures area.
5. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 1 or 2,
It is characterized in that, the first step specifically:
By separation vertex, normal, textures, vertex color and triangle, triangle array corresponding to unlike material is obtained,
Each triangle number group is merged into different sub-grid arrays, in order to below Double Tops point search can quickly and effectively into
Row, needs to establish an orderly index list, and orderly vertex index list is finally with the D coordinates value on vertex, according to x, y,
The priority orders of z coordinate, are arranged from small to large.
6. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 1 or 2,
It is characterized in that, the second step specifically:
Similar vertex is removed, independent vertices or important vertex are retained, if can have the common vertex in multiple sub-grids,
Illustrate that the vertex is shared with various material, belongs to important vertex, they are found out, it is each by traversing triangle array
Vertex finds out sub-grid and vertex coexists;Ordered indices list is passed to by the apex coordinate that will require look up to be traversed, and is found out
Identical vertex index, above-mentioned sub-grid coexist the common index in vertex and ordered list be exactly position shared attribute vertex with
Texture shared attribute vertex.
7. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 1 or 2,
It is characterized in that, the third step specifically:
Three vertex of current triangle are split, triangle sets associated by the first vertex are obtained, which is added to empty phase
Adjacent triangle array, is then added to traversing triangle group for the group, and unique bank number is arranged to this group of adjacent triangle group, obtains
Triangle sets associated by second and third vertex are taken, if the triangle array has stepped through, abandon three currently obtained
It is angular, if it is not, being added to adjacent triangle array, which is added to traversing triangle group, adjacent to the group three
Angular group of setting unique bank number.
8. the three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface as claimed in claim 1 or 2,
It is characterized in that, the 7th step cuts model specifically:
Edge contraction processing is carried out first, and edge contraction is to choose the minimum side of significance level in a triangle to be folded, meeting
The merging on two vertex is caused, is calculated to simplify, is eventually merged into one of vertex, rather than recalculates new
The coordinate on vertex;
After completing edge contraction, new grid is re-created, while creating new grid all properties data, create new vertex
Normal, textures and color data in array and vertex attribute, and new summit is recorded, searching loop judges each vertex
Whether it is folded, the vertical array after the completion of folding is added to the vertical array of new grid, the textures after the completion of folding is sat
Mark is added to the mapping coordinates of new grid, and the vertex color array after the completion of folding is added to the vertex color number of new grid
Group records the vertex for being added to new grid;
It according to old grid intermediate cam shape and vertex relationship, is corresponded in new grid, three-dimensional space geometrical model mesh triangles
Shape carries contacting between vertex and vertex, each triangle of old triangle array is extracted, and change its correspondence
Sub-grid subscript, judge whether three vertex have all been added to new grid, if it is true, which be added to
New triangle array, while new group number is set and the group number is added to new triangle group number list, by sub-grid decline
It is filled, forms a complete sub-grid array;
Product below will be folded to remove for 0 triangle, simplify grid complexity, at the same by its corresponding grid subscript also into
Row removes, and records the triangle of removal, its corresponding vertex, mapping coordinates, vertex color data are removed together, updates new
Vertex index corresponding to triangle array;
To area smaller portions in grid, the parameter of the value is separately provided before simplification, according to incoming value, calculates high-level
Weight traverses new triangle array, quadratures to each triangle of taking-up, the triangle sets gross area and triangle number
Amount determines the maximum area removed, traverses to new triangle array according to incoming value, removes the institute for being less than maximum area
There is triangle, removes sub-grid subscript corresponding to the triangle;
It creates new grid: front new data generated is uniformly subjected to grid drawing, new summit array overlay model number of vertex
Group, new normal array overlay model normal array, the new sub-grid subscript of new summit color array overlay model vertex color array
Array overlay model sub-grid subscript array.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811083741.5A CN109410332B (en) | 2018-09-17 | 2018-09-17 | Three-dimensional space geometric virtual model detail level cutting method based on point, line and surface |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811083741.5A CN109410332B (en) | 2018-09-17 | 2018-09-17 | Three-dimensional space geometric virtual model detail level cutting method based on point, line and surface |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109410332A true CN109410332A (en) | 2019-03-01 |
CN109410332B CN109410332B (en) | 2022-12-23 |
Family
ID=65465003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811083741.5A Active CN109410332B (en) | 2018-09-17 | 2018-09-17 | Three-dimensional space geometric virtual model detail level cutting method based on point, line and surface |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109410332B (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903366A (en) * | 2019-03-13 | 2019-06-18 | 网易(杭州)网络有限公司 | The rendering method and device of dummy model, storage medium and electronic equipment |
CN110363845A (en) * | 2019-07-22 | 2019-10-22 | 南京聚润工程科技有限公司 | A kind of BIM threedimensional model point subtracts the method and system that face stores and reconstructs |
CN110442925A (en) * | 2019-07-16 | 2019-11-12 | 中南大学 | A kind of three-dimensional visualization method and system based on the reconstruct of real-time dynamic partition |
CN111145329A (en) * | 2019-12-25 | 2020-05-12 | 北京像素软件科技股份有限公司 | Model rendering method and system and electronic device |
CN111627105A (en) * | 2020-05-28 | 2020-09-04 | 北京字节跳动网络技术有限公司 | Face special effect splitting method, device, medium and equipment |
CN112419430A (en) * | 2020-05-28 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | Animation playing method and device and computer equipment |
CN112802161A (en) * | 2021-01-27 | 2021-05-14 | 青岛联合创智科技有限公司 | Intelligent covering method for three-dimensional virtual character |
CN112859745A (en) * | 2021-01-07 | 2021-05-28 | 东莞市三姆森光电科技有限公司 | Automatic workpiece machining area dividing method for three-axis laser marking process |
CN112967400A (en) * | 2021-04-13 | 2021-06-15 | 成都四方伟业软件股份有限公司 | Unity 3D-based three-dimensional graph dynamic creation method and device |
CN113391598A (en) * | 2021-06-28 | 2021-09-14 | 哈尔滨工业大学 | Virtual assembly simulation method and system |
CN113421337A (en) * | 2021-07-21 | 2021-09-21 | 北京臻观数智科技有限公司 | Method for improving model rendering efficiency |
CN114756555A (en) * | 2022-06-14 | 2022-07-15 | 浙江华东工程数字技术有限公司 | Multi-source heterogeneous three-dimensional model data processing method and system |
CN116402988A (en) * | 2023-05-11 | 2023-07-07 | 北京冰河起源科技有限公司 | Three-dimensional model processing method, device and storage medium |
CN117494289A (en) * | 2023-12-27 | 2024-02-02 | 中建三局集团有限公司 | Feature edge geometry generation method and device, and measurement adsorption method and device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6348921B1 (en) * | 1996-04-12 | 2002-02-19 | Ze Hong Zhao | System and method for displaying different portions of an object in different levels of detail |
CN102360515A (en) * | 2011-10-19 | 2012-02-22 | 武汉大学 | Progressive mesh data organization method for three-dimensional model |
CN102663800A (en) * | 2012-04-26 | 2012-09-12 | 北京师范大学 | City building complex and rendering method considering city image |
CN103221993A (en) * | 2010-09-13 | 2013-07-24 | 巴里·林恩·詹金斯 | Delivering and controlling streaming interactive media comprising rendered geometric, texture and lighting data |
CN103324783A (en) * | 2013-05-30 | 2013-09-25 | 国家电网公司 | LOD model real-time generation method based on side folding |
CN103646415A (en) * | 2013-12-24 | 2014-03-19 | 秦皇岛数据产业研究院有限公司 | Dual constraint based selection calling method of LOD (Level of Detail) model in three-dimensional scene |
CN104574501A (en) * | 2014-12-19 | 2015-04-29 | 浙江大学 | High-quality texture mapping method aiming at complicated three-dimensional scene |
-
2018
- 2018-09-17 CN CN201811083741.5A patent/CN109410332B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6348921B1 (en) * | 1996-04-12 | 2002-02-19 | Ze Hong Zhao | System and method for displaying different portions of an object in different levels of detail |
CN103221993A (en) * | 2010-09-13 | 2013-07-24 | 巴里·林恩·詹金斯 | Delivering and controlling streaming interactive media comprising rendered geometric, texture and lighting data |
CN102360515A (en) * | 2011-10-19 | 2012-02-22 | 武汉大学 | Progressive mesh data organization method for three-dimensional model |
CN102663800A (en) * | 2012-04-26 | 2012-09-12 | 北京师范大学 | City building complex and rendering method considering city image |
CN103324783A (en) * | 2013-05-30 | 2013-09-25 | 国家电网公司 | LOD model real-time generation method based on side folding |
CN103646415A (en) * | 2013-12-24 | 2014-03-19 | 秦皇岛数据产业研究院有限公司 | Dual constraint based selection calling method of LOD (Level of Detail) model in three-dimensional scene |
CN104574501A (en) * | 2014-12-19 | 2015-04-29 | 浙江大学 | High-quality texture mapping method aiming at complicated three-dimensional scene |
Non-Patent Citations (2)
Title |
---|
罗安平 等: "Android平台的多尺度地理信息三维显示技术", 《测绘科学技术学报》 * |
许云杰 等: "基于层次细节模型的遮挡裁剪算法", 《中国图象图形学报》 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903366A (en) * | 2019-03-13 | 2019-06-18 | 网易(杭州)网络有限公司 | The rendering method and device of dummy model, storage medium and electronic equipment |
CN110442925A (en) * | 2019-07-16 | 2019-11-12 | 中南大学 | A kind of three-dimensional visualization method and system based on the reconstruct of real-time dynamic partition |
CN110442925B (en) * | 2019-07-16 | 2020-05-15 | 中南大学 | Three-dimensional visualization method and system based on real-time dynamic segmentation reconstruction |
CN110363845A (en) * | 2019-07-22 | 2019-10-22 | 南京聚润工程科技有限公司 | A kind of BIM threedimensional model point subtracts the method and system that face stores and reconstructs |
CN111145329A (en) * | 2019-12-25 | 2020-05-12 | 北京像素软件科技股份有限公司 | Model rendering method and system and electronic device |
CN111145329B (en) * | 2019-12-25 | 2024-03-22 | 北京像素软件科技股份有限公司 | Model rendering method, system and electronic device |
CN111627105B (en) * | 2020-05-28 | 2023-04-28 | 北京字节跳动网络技术有限公司 | Face special effect splitting method, device, medium and equipment |
CN112419430A (en) * | 2020-05-28 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | Animation playing method and device and computer equipment |
CN111627105A (en) * | 2020-05-28 | 2020-09-04 | 北京字节跳动网络技术有限公司 | Face special effect splitting method, device, medium and equipment |
CN112419430B (en) * | 2020-05-28 | 2022-10-28 | 上海哔哩哔哩科技有限公司 | Animation playing method and device and computer equipment |
CN112859745A (en) * | 2021-01-07 | 2021-05-28 | 东莞市三姆森光电科技有限公司 | Automatic workpiece machining area dividing method for three-axis laser marking process |
CN112859745B (en) * | 2021-01-07 | 2021-12-14 | 广东三姆森科技股份有限公司 | Automatic workpiece machining area dividing method for three-axis laser marking process |
CN112802161A (en) * | 2021-01-27 | 2021-05-14 | 青岛联合创智科技有限公司 | Intelligent covering method for three-dimensional virtual character |
CN112802161B (en) * | 2021-01-27 | 2022-11-15 | 青岛联合创智科技有限公司 | Intelligent covering method for three-dimensional virtual character |
CN112967400A (en) * | 2021-04-13 | 2021-06-15 | 成都四方伟业软件股份有限公司 | Unity 3D-based three-dimensional graph dynamic creation method and device |
CN112967400B (en) * | 2021-04-13 | 2022-07-15 | 成都四方伟业软件股份有限公司 | Unity 3D-based three-dimensional graph dynamic creation method and device |
CN113391598A (en) * | 2021-06-28 | 2021-09-14 | 哈尔滨工业大学 | Virtual assembly simulation method and system |
CN113421337A (en) * | 2021-07-21 | 2021-09-21 | 北京臻观数智科技有限公司 | Method for improving model rendering efficiency |
CN114756555B (en) * | 2022-06-14 | 2022-08-26 | 浙江华东工程数字技术有限公司 | Multi-source heterogeneous three-dimensional model data processing method and system |
CN114756555A (en) * | 2022-06-14 | 2022-07-15 | 浙江华东工程数字技术有限公司 | Multi-source heterogeneous three-dimensional model data processing method and system |
CN116402988A (en) * | 2023-05-11 | 2023-07-07 | 北京冰河起源科技有限公司 | Three-dimensional model processing method, device and storage medium |
CN116402988B (en) * | 2023-05-11 | 2023-12-19 | 北京冰河起源科技有限公司 | Three-dimensional model processing method, device and storage medium |
CN117494289A (en) * | 2023-12-27 | 2024-02-02 | 中建三局集团有限公司 | Feature edge geometry generation method and device, and measurement adsorption method and device |
CN117494289B (en) * | 2023-12-27 | 2024-03-19 | 中建三局集团有限公司 | Feature edge geometry generation method and device, and measurement adsorption method and device |
Also Published As
Publication number | Publication date |
---|---|
CN109410332B (en) | 2022-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109410332A (en) | Three-dimensional space geometry dummy model level of detail method of cutting out based on point-line-surface | |
US8570322B2 (en) | Method, system, and computer program product for efficient ray tracing of micropolygon geometry | |
CN105336003B (en) | The method for drawing out three-dimensional terrain model with reference to the real-time smoothness of GPU technologies | |
Cignoni et al. | Representation and visualization of terrain surfaces at variable resolution | |
Brodlie et al. | Recent advances in volume visualization | |
JP5625554B2 (en) | 3D model dividing method, 3D model dividing apparatus, and image processing system including 3D model dividing apparatus | |
CN105184867B (en) | The three dimensional contour line method of rule-based grid and Corner-point Grids technology | |
CN105513131B (en) | A kind of three-dimensional geological structural model Corner-point Grids subdivision method taking fold into account | |
CN106023297B (en) | A kind of texture dynamic organization method of subtle three-dimensional model | |
CN109118588B (en) | Automatic color LOD model generation method based on block decomposition | |
CN112035433A (en) | Method for converting BIM model into GIS model supporting large-volume grading loading | |
JP2002501640A (en) | Adaptive mesh refinement method and apparatus | |
CN111027113A (en) | Method, system and storage medium for generating plane contour map based on building model | |
WO2001008263A2 (en) | Method and apparatus for generating atomic parts of graphic representation through skeletonization for interactive visualization applications | |
CN111968231A (en) | Three-dimensional stratum modeling method based on geological map section | |
CN111784840B (en) | LOD (line-of-sight) level three-dimensional data singulation method and system based on vector data automatic segmentation | |
CN108022273A (en) | A kind of figure number Detachable drafting method and system | |
CN106251331A (en) | The extracting method of atural object in a kind of inclination measurement scene | |
CN110032771A (en) | A kind of accurate method of cutting out of open coal mine DEM for taking local detail feature into account | |
CN115758938B (en) | Adhesive boundary flow field numerical simulation-oriented boundary layer grid generation method | |
Liu et al. | Exact and adaptive signed distance fieldscomputation for rigid and deformablemodels on gpus | |
Mustafa et al. | Hardware-assisted view-dependent map simplification | |
CN110533764A (en) | Divide shape quaternary tree veining structure method towards groups of building | |
Zhang et al. | A geometry and texture coupled flexible generalization of urban building models | |
Würfel et al. | Natural Phenomena as Metaphors for Visualization of Trend Data in Interactive Software Maps. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |