WO2012037862A1 - Distributed plotting method for 3d model data and a device therefor - Google Patents

Distributed plotting method for 3d model data and a device therefor Download PDF

Info

Publication number
WO2012037862A1
WO2012037862A1 PCT/CN2011/079726 CN2011079726W WO2012037862A1 WO 2012037862 A1 WO2012037862 A1 WO 2012037862A1 CN 2011079726 W CN2011079726 W CN 2011079726W WO 2012037862 A1 WO2012037862 A1 WO 2012037862A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
pixel
current
drawn
image
Prior art date
Application number
PCT/CN2011/079726
Other languages
French (fr)
Chinese (zh)
Inventor
董福田
Original Assignee
Dong futian
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dong futian filed Critical Dong futian
Publication of WO2012037862A1 publication Critical patent/WO2012037862A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Definitions

  • the present invention claims to be submitted to the Chinese Patent Office on September 20, 2010, the application number is 201010287543.8, and the invention name is "a three-dimensional model of adaptive tube, progressive transmission and efficient rendering.
  • Priority of the Chinese Patent Application the entire contents of which is incorporated herein by reference.
  • TECHNICAL FIELD The present invention relates to the field of spatial information technology, computer graphics, virtual reality technology, and computer operating systems, and more particularly to a method and apparatus for distributed drawing of three-dimensional model data. Background technique
  • the model is an abstraction or simulation of various laws or processes in the objective world.
  • the spatial data model is an abstraction of spatial entities and their interconnections in the real world. It is the basis for describing and organizing spatial data and designing spatial database patterns.
  • three-dimensional objects are usually described using a three-dimensional spatial data model (a three-dimensional model), which is then displayed by a computer or other video device.
  • the displayed 3D model can be a real-world entity or a fictional thing that can be as small as an atom or as large as a large size. Anything that exists in physics and nature can be represented by a three-dimensional model.
  • the 3D model consists of two parts, geometry and texture.
  • the geometric part is mainly divided into three types: a vector model based on a vector, a solid model based on a voxel, and a mixed model.
  • Texture is an image, but it makes the model more detailed and looks more realistic.
  • the Internet has become a basic platform for data sharing, distributed storage, distributed computing, transmission, visualization, etc., so the 3D models that a system needs to draw may be distributed and stored in a network environment, or even a heterogeneous environment.
  • how to realize the three-dimensional model of the distributed storage required for display on a client that is, how to realize the distributed drawing of the three-dimensional model data becomes an urgent problem to be solved.
  • an embodiment of the present invention provides a method and an apparatus for distributed drawing of three-dimensional model data, and the technical solution is as follows:
  • a three-dimensional model data distributed drawing method comprising:
  • the post-rendering data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter, and corresponding to each pixel on the image Synthetic identification amount;
  • the received post-rendered data is synthesized according to the combined identification amount of each pixel in the drawn data to determine that the synthesized image is a distributed-drawn image of the three-dimensional model data.
  • the embodiment of the present invention provides a three-dimensional model data distributed drawing device, including: a request sending module, configured to send a drawing data request to a plurality of request receiving ends, where the drawing data request carries a view control parameter;
  • a data receiving module configured to receive the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the drawn data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter a composite identification amount corresponding to each pixel on the image;
  • the merging processing module is configured to synthesize the received post-rendered data according to the combined identification quantity of each pixel in the drawn data.
  • the embodiment of the present invention further provides a three-dimensional model data distributed drawing method, including: receiving a drawing data request sent by a requesting sending end, the drawing data request carrying a view control parameter, where the view control parameter includes: an outsourcing rectangle of the view window , viewpoint parameters and projection parameters; And drawing three-dimensional model data according to the view control parameter, and generating an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
  • the embodiment of the present invention provides a three-dimensional model data distributed drawing apparatus, including: a request receiving module, configured to receive a drawing data request sent by a requesting sending end, where the drawing data request carries a view control parameter, the view Control parameters include: an outsourcing rectangle of the view window, viewpoint parameters, and projection parameters;
  • An image generating module configured to draw three-dimensional model data according to the view control parameter, and generate an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter;
  • An identifier quantity generating module configured to acquire a depth of each pixel on the image, and use the pixel depth to form a combined identifier quantity of the corresponding pixel, where the pixel depth is used to determine a distance of the three-dimensional model data corresponding to each pixel The distance of the viewpoint determined by the view control parameter;
  • a data sending module configured to send the drawn image and the combined identifier amount corresponding to each pixel to the request sending end.
  • the requesting sending end when the three-dimensional model data needs to be drawn, the requesting sending end sends a corresponding drawing data request carrying the view control parameter to the plurality of request receiving ends, and when receiving the request receiving end After the image corresponding to the request, including the image corresponding to the three-dimensional model data according to the view control parameter and the combined identifier of the corresponding pixel on the image, the number of the combined identifiers of each pixel is The images are synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data.
  • FIG. 1 is a first flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention
  • FIG. 2 is a second flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention
  • FIG. 3 is a third flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention
  • FIG. 4 is a fourth flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a first type of coordinates of a Z-buffer algorithm according to an embodiment of the present invention
  • FIG. 6 is a second schematic diagram of a Z-buffer algorithm according to an embodiment of the present invention
  • a third schematic diagram of a Z-buffer algorithm is provided
  • FIG. 8 is a schematic diagram of a first structure of a three-dimensional model data distributed drawing device according to an embodiment of the present invention
  • FIG. 9 is a second structural diagram of a three-dimensional model data distributed drawing apparatus according to an embodiment of the present invention.
  • an embodiment of the present invention provides a 3D model data distribution. Drawing method and device.
  • the basic idea of the three-dimensional model data distributed drawing method is:
  • the request sending end sends a corresponding drawing data request containing the same view control parameter to the plurality of request receiving ends; each request receiving end feeds back the corresponding drawn data after receiving the drawing data request; After receiving the post-rendered data fed back by each request receiving end, the transmitting end synthesizes the plurality of post-rendered data to determine that the synthesized image is a distributed image of the three-dimensional model data. Therefore, the solution provided by the embodiment of the present invention can effectively implement distributed drawing of three-dimensional model data.
  • the display process of the three-dimensional model in the view window is first introduced.
  • the display process of the 3D model in the view window is generally as follows: First, the 3D model conforming to the given spatial condition is taken out through the spatial data index and transmitted to the 3D model user (such as the client) through the transmission medium; then, the 3D model data is performed. After the series of coordinate transformation and processing, transform into coordinate points on the 2D image; according to the display parameters, the 3D model is finally rasterized into image pixels by the drawing algorithm, drawn into a raster image, displayed or output on the client (such as a computer Screen display, printout on paper, and generation of image file output, etc.). The drawing of the 3D model is finally reduced by the drawing algorithm to the operation of one pixel. Finally, the pixels drawn by the 3D model data closest to the observation point in the 3D model data drawn on the same pixel can be displayed.
  • the present invention proposes to control the distributed rendering of the three-dimensional model data by using the same view control parameter, and simultaneously recording the depth of each pixel on the image, and determining the three-dimensional model data corresponding to the pixel from the view control parameter.
  • the distance between the viewpoints constitutes a composite marker amount of the corresponding pixel, and finally the plurality of images after the image are synthesized according to the combined marker amount of the pixel, and the combined image is determined to be a distributed image of the three-dimensional model data.
  • the request sending end may be a computer device, a mobile phone device, or the like.
  • a three-dimensional model data distributed drawing method may include:
  • Step S101 the requesting sending end sends a drawing data request to the plurality of request receiving ends, where the drawing data request carries a view control parameter;
  • the request receiving end can be an image processing server or other device having image processing functions and the like.
  • the request sending end is based on the view of the 3D model data display.
  • the view control parameter determined by the window generates a corresponding drawing data request, and sends the generated drawing data request to the corresponding request receiving end.
  • the view control parameter may include:
  • the matrix transforms the coordinates of the vertices in the original coordinate system to the viewpoint coordinate system.
  • the projection parameters include: orthogonal projection and perspective projection, or a view matrix and a projection matrix obtained by the above parameters.
  • Step S102 receiving the post-drawing data corresponding to the drawing data request fed back by the request receiving end;
  • the post-rendering data includes an image corresponding to the requesting receiving end to draw the three-dimensional model data according to the view control parameter and a synthetic identifier corresponding to each pixel on the image.
  • the request receiving end After receiving the corresponding drawing data request, the request receiving end draws the three-dimensional model data according to the view control parameter carried in the drawing data request, and generates an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter. Simultaneously recording a composite identification amount corresponding to each pixel on the image, the composite identification amount including a depth of the pixel on the image. The depth of the pixel is used to determine the distance of the three-dimensional model data corresponding to each pixel from the viewpoint determined by the view control parameter. Finally, the request receiving end feeds back the image corresponding to the three-dimensional model data and the combined identification amount corresponding to each pixel as the post-rendered data to the request transmitting end. It can be understood that the synthetic identifier may further include information such as an identification number of the three-dimensional model, transparency of the pixel, and the like.
  • the pixels of the view window are represented by the raster data structure according to the view control parameter, and the pixels are uniform grid cells divided by the view window plane, and the pixels are in the raster data.
  • the basic information storage unit determines a coordinate position of the pixel according to a corresponding row number and column number of the pixel in the view window.
  • z Value is expressed as the depth of the pixel (ie, the z coordinate).
  • the pixel depth value is smaller, the closer to the viewpoint, the initial value of the raster data representing the pixel depth is maximized; if the pixel depth The larger the value is, the closer the viewpoint is, the smaller the initial value of the raster data representing the pixel depth.
  • the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
  • Step S103 according to the combined identification quantity of each pixel in the drawn data, the received After the data is drawn, the data is synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data.
  • the requesting transmitting end After receiving the corresponding post-rendered data fed back by the request receiving end, the requesting transmitting end synthesizes the received plurality of post-rendered data by using the combined identification quantity of the pixels in the drawn data, that is, performs multiple images on the image.
  • the synthesis process is such that the far object is replaced by a close object at the pixel level, and is independent of the order in which the form appears on the screen.
  • the synthesized data is synthesized according to the combined identifier of each pixel of the data after the drawing, which may be:
  • the requesting sender After the requesting sender receives the post-rendered data fed back by the requesting end, it determines whether there is pre-rendered data, and if so, the currently received post-rendered data is used as the current post-rendered data, and according to the current drawing a composite identification amount of each pixel in the subsequent data and a composite identification amount of the corresponding pixel in the previously drawn data, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as a new The data is drawn first; otherwise, the currently received data is taken as the data after the first drawing;
  • the above-mentioned processing is performed on the received post-rendered data, and the final synthesized image is determined to be an image of the three-dimensional model data distributed drawing.
  • the first post-rendered data received by the requesting end and satisfying the specific requirement is generally used as the data after the first drawing, and the post-rendered data that is subsequently received and meets the specific requirement is sequentially used as the current post-rendered data, and
  • the currently existing pre-rendered data is subjected to a specific synthesis process, and the synthesized data is used as a new pre-rendered data until the post-rendered data that satisfies the requirements are combined with the previously drawn data to form a three-dimensional model data.
  • Distributed image after drawing is generally used as the data after the first drawing, and the post-rendered data that is subsequently received and meets the specific requirement is sequentially used as the current post-rendered data, and
  • the currently existing pre-rendered data is subjected to a specific synthesis process, and the synthesized data is used as a new pre-rendered data until the post-rendered data that satisfies the requirements are combined with the previously drawn data to form
  • a composite identification quantity of the pixel the composite processing of the current drawn data and the prior drawn data may include:
  • Step S201 determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed Pi;
  • the image in the data after drawing is the request receiving end after receiving the corresponding drawing data request, according to And generating, by the view control parameter carried in the data request, the three-dimensional model data, and generating an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter, that is, the pixel on the view window corresponding to the view control parameter It is in one-to-one correspondence with the pixels of the image in the current drawn data and the pixels of the image in the previously drawn data.
  • Step S202 determining a synthetic identifier corresponding to the current pixel to be analyzed in the currently drawn data as the current synthetic identifier Zi to be analyzed;
  • Step S203 it is determined whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is equal to the initial value, and if yes, step S207 is performed; otherwise, step S204 is performed;
  • the initial pixel depth value in this embodiment is a maximum value. It can be understood that, according to different systems, if the pixel depth value is smaller, the closer to the viewpoint, the pixel depth initial value is a maximum value; if the pixel depth value is larger, the closer to the viewpoint, the pixel depth initial The value is assigned a minimum value. Wherein, when the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
  • Step S204 Obtain a synthetic identifier Zi corresponding to the pixel P to be analyzed in the data that is previously drawn.
  • Step S205 determining whether the pixel depth recorded in the current to-be-analyzed synthetic identification amount Zi is smaller than the synthesized identification amount Zi corresponding to the current to-be-analyzed pixel Pi in the previously drawn data, and the recorded pixel depth, if yes, Then step S206 is performed; otherwise, step S207 is performed;
  • Step S206 the data in the previously drawn data corresponding to the current pixel to be analyzed Pi is replaced by the data in the current mapped data corresponding to the current pixel to be analyzed, and step S208 is performed;
  • Step S207 retaining data in the previously drawn data corresponding to the current pixel to be analyzed Pi;
  • Step S208 determining whether there are unparsed pixels in the view window, and if yes, executing step S201; otherwise, ending.
  • the synthesis processing of the current post-rendered data and the pre-rendered data can be completed in the above manner.
  • Synthesizing the identifier, and synthesizing the current post-rendered data and the pre-rendered data may include: Step S301, determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed Pi;
  • the request receiving end draws the three-dimensional model data according to the view control parameter carried in the drawing data request, and generates an outsourcing of the view window corresponding to the view control parameter after receiving the corresponding drawing data request.
  • An image having the same size of the rectangle, that is, a pixel on the view window corresponding to the view control parameter and a pixel of the image in the current drawn data and a pixel of the image in the previously drawn data are in one-to-one correspondence of.
  • Step S302 determining a synthetic identifier corresponding to the current pixel to be analyzed in the currently drawn data as the current synthetic identifier Zi to be analyzed;
  • Step S303 it is determined whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is equal to the initial value, and if yes, step S307 is performed; otherwise, step S304 is performed;
  • the initial value of the pixel depth described in this embodiment is a minimum value. It can be understood that, according to different systems, if the pixel depth value is smaller, the closer to the viewpoint, the pixel depth initial value is a maximum value; if the pixel depth value is larger, the closer to the viewpoint, the pixel depth initial The value is assigned a minimum value. Wherein, when the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
  • Step S304 obtaining a synthetic identifier Zi corresponding to the pixel P to be analyzed in the previously drawn data
  • Step S305 determining whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is greater than the synthesized identification amount Zi corresponding to the current to-be-analyzed pixel Pi in the previously drawn data, and the recorded pixel depth, if yes, Then step S306 is performed; otherwise, step S307 is performed;
  • Step S306 the data in the previously drawn data corresponding to the current pixel to be analyzed Pi is replaced by the data in the current drawn data corresponding to the current pixel to be analyzed, and step S308 is performed;
  • Step S307 retaining data in the previously drawn data corresponding to the current pixel to be analyzed Pi;
  • Step S308 determining whether there are pixels that are not analyzed in the view window, and if yes, executing step S301; otherwise, ending.
  • a three-dimensional model data distributed drawing method may include:
  • Step S401 Receive a request for drawing data sent by the sending end, where the drawing data request carries a view control parameter;
  • the view control parameters include: an outsourcing rectangle of the view window, a viewpoint parameter, and a projection parameter.
  • Step S402 drawing three-dimensional model data according to the view control parameter, and generating an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
  • Step S403 Obtain a depth of each pixel on the image, and use the pixel depth to form a combined identifier of the corresponding pixel, where the pixel depth is used to determine that the three-dimensional model data corresponding to each pixel is away from the view control parameter. The distance of the determined viewpoint;
  • the synthetic identifier may further include information such as a label of the three-dimensional model, pixel transparency, and the like.
  • the calculation method of each pixel depth on the image may select different algorithms according to actual conditions, for example: Z buffer algorithm.
  • the Z buffer algorithm is taken as an example to introduce the calculation of pixel depth:
  • the Z-buffer algorithm also called the depth buffer algorithm, belongs to the image space blanking algorithm, which first transforms the original coordinates of the three-dimensional model data according to the view control parameters to obtain the view coordinates of the view window, and then performs analysis and calculation.
  • the depth buffer algorithm has two buffers: a depth buffer and a frame buffer, corresponding to two arrays: a depth array depth ( x, y ) and an attribute array intensity ( x, y ).
  • the former stores the z coordinate of each visible pixel of the image space, and the latter stores the attribute (light intensity or color) value of each visible pixel of the image space.
  • the algorithm usually calculates the depth of each object's surface from the observation plane along the Z-axis of the observation coordinate system. It processes the surface of each object in the scene separately and performs point by point on each patch. Description of the object After being transformed into a projected coordinate system, each point (X, y, z) on the polygon surface corresponds to the orthographic projection point (X, y) on the observation plane. Thus, for each pixel (X, y) on the viewing plane, the comparison of their depths can be achieved by comparison of their z values. For the right-handed coordinate system, the point with the largest z value should be visible. As shown in Fig. 5, on the observation plane, the face si is opposite to the face s2 and the face s3 is closest to the viewpoint, so it is visible at this position (x, y).
  • each unit of the frame buffer is set to the background color, and then each patch in the polygon table is processed one by one.
  • the depth value z ( X, y ) corresponding to each pixel (X, y ) of the row is calculated, and the result is compared with the depth value depth (x, y) stored in the pixel unit in the depth buffer.
  • n the slope of the edge
  • n the depth along the edge
  • the calculation formula is: For each scan line, first calculate the depth value corresponding to the leftmost intersection of the polygon intersecting with it according to formula (3), and then all subsequent points on the scan line are calculated by (4).
  • the image after blanking is obtained, and the depth corresponding to each pixel on the image is obtained, which can constitute the composite mark corresponding to the pixel.
  • Step S404 Send the drawn image and the combined identification amount corresponding to each pixel as the post-rendered data to the request sending end.
  • the requesting sending end sends a corresponding drawing data request carrying the view control parameter to the plurality of request receiving ends, and when receiving the request receiving end
  • the image corresponding to the request including the image corresponding to the three-dimensional model data according to the view control parameter and the combined identifier of the corresponding pixel on the image
  • the number of the combined identifiers of each pixel is The images are synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data.
  • the corresponding drawing data request is sent to the plurality of request receiving ends, and the drawn data fed back by the request receiving end is synthesized, thereby realizing distributed drawing of the three-dimensional model data.
  • the present invention can be implemented by means of software plus a necessary general hardware platform, and of course, can also be through hardware, but in many cases, the former is better.
  • Implementation Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium, including a plurality of instructions for causing a A computer device (which may be a personal computer, server, or network device, etc.) performs all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a medium that can store program codes, such as a read only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
  • the embodiment of the present invention further provides a three-dimensional model data distributed drawing device, as the request sending end, as shown in FIG. 8, the device may include:
  • the request sending module 110 is configured to send a drawing data request to the multiple request receiving ends, where the drawing data request carries a view control parameter;
  • the data receiving module 120 is configured to receive the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the post-rendering data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter, and a combined identification amount corresponding to each pixel on the image;
  • the merging processing module 130 is configured to synthesize the received post-rendered data according to the combined identification amount of each pixel in the drawn data.
  • the three-dimensional model data distributed drawing device as the request transmitting end can be a computer device, a mobile phone device or the like.
  • the merge processing module 130 may include:
  • a first determining unit configured to: after receiving the post-rendered data fed back by the request receiving end, determine whether there is data after the first drawing, and if yes, trigger the merge processing unit; otherwise, trigger the previous data determining unit;
  • a merging processing unit configured to use the currently received post-rendered data as the current post-rendered data, and according to the synthesized identification amount of each pixel in the currently drawn data and the previously drawn data a composite identification quantity of the corresponding pixel, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as new prior-drawn data;
  • the prior data determining unit is configured to use the currently received post-rendered data as the pre-rendered data.
  • the embodiment of the present invention further provides a three-dimensional model data distributed drawing device, which is used as a request receiving end, as shown in FIG.
  • the request receiving module 210 is configured to receive a drawing data request sent by the requesting sending end, where the drawing data request carries a view control parameter, where the view control parameter includes: an outsourcing rectangle, a view point parameter, and a projection parameter of the view window;
  • the image generation module 220 is configured to draw the three-dimensional model data according to the view control parameter, and generate an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
  • the identifier quantity generating module 230 is configured to acquire a depth of each pixel on the image, and use the pixel depth to form a combined identifier quantity of the corresponding pixel, where the pixel depth is used to determine a distance of a three-dimensional model data corresponding to each pixel. The distance of the viewpoint determined by the view control parameter;
  • the data sending module 240 is configured to send the drawn image and the combined identifier amount corresponding to each pixel to the request sending end.
  • the three-dimensional model data distributed drawing device as the request receiving end can be an image processing server or other device having image processing functions and the like.
  • a device or system embodiment since it substantially corresponds to a method embodiment, reference is made to the partial description of the method embodiment.
  • the apparatus or system embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie It can be located in one place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without undue creative labor.
  • the disclosed system, apparatus, and method may be implemented in other manners without departing from the spirit and scope of the present application.
  • the present embodiments are merely exemplary, and should not be taken as limiting, and the specific content given should not limit the purpose of the application.
  • the division of the unit or subunit is only a logical function division. In actual implementation, there may be another way of dividing, for example, multiple units or multiple sub-units are combined. In addition, multiple units may or may be combined or integrated into another system, or some features may be omitted or not implemented.
  • the described systems, apparatus, and methods, and the schematic diagrams of various embodiments may be combined or integrated with other systems, modules, techniques or methods without departing from the scope of the present application.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.

Abstract

Disclosed is a distributed plotting method for 3D model data and a device therefor. The method comprises: sending to multiple request-receiving terminals plotting data requests containing view control parameters; receiving from the request-receiving terminals fedback post-plotting data corresponding to the plotting data requests, said post-plotting data containing an image corresponding to the 3D model data plotted by the request-receiving terminals based on the view control parameters, and containing composite label values corresponding to all pixels of the image; synthesizing, according to the composite label values of all pixels within the post-plotting data, all received post-plotting data to ensure that the synthesized image is the image distributedly plotted from the 3D model data. The solution provided by the present invention enables the distributed plotting of 3D model data by having corresponding plotting data requests sent to multiple request-receiving terminals, and then having the feedback from the request-receiving terminals synthesized and processed.

Description

一种三维模型数据分布式绘图方法及装置 本申请要求于 2010年 9月 20日提交中国专利局、 申请号为 201010287543.8、 发明名称为 "一种三维模型的自适应化筒、 渐进传输和高效渲染的方法" 的中 国专利申请的优先权和于 2010年 12月 6日提交中国专利局、 申请号为 201010597111.7、 发明名称为 "一种三维模型的自适应化筒、 渐进传输和快速 绘制的方法"的中国专利申请的优先权,其全部内容通过引用结合在本申请中。 技术领域 本发明涉及空间信息技术、计算机图形学、虚拟现实技术和计算机操作系 统等领域技术领域, 特别是涉及一种三维模型数据分布式绘图方法及装置。 背景技术  The present invention claims to be submitted to the Chinese Patent Office on September 20, 2010, the application number is 201010287543.8, and the invention name is "a three-dimensional model of adaptive tube, progressive transmission and efficient rendering. The method of Chinese patent application priority and submitted to the Chinese Patent Office on December 6, 2010, application number 201010597111.7, the invention name is "a three-dimensional model of adaptive tube, progressive transmission and rapid drawing method" Priority of the Chinese Patent Application, the entire contents of which is incorporated herein by reference. TECHNICAL FIELD The present invention relates to the field of spatial information technology, computer graphics, virtual reality technology, and computer operating systems, and more particularly to a method and apparatus for distributed drawing of three-dimensional model data. Background technique
模型是对客观世界中各种规律或过程的抽象或模拟,空间数据模型则是对 现实世界中空间实体及其相互联系的抽象, 是描述和组织空间数据、 以及设计 空间数据库模式的基础。 在计算机图形学中, 通常用三维空间数据模型(筒称 三维模型)描述三维物体, 然后再通过计算机或者其它视频设备进行显示。 显 示的三维模型可以是现实世界的实体,也可以是虚构的东西,既可以小到原子, 也可以大到很大的尺寸。 任何物理自然界存在的东西都可以用三维模型表示。  The model is an abstraction or simulation of various laws or processes in the objective world. The spatial data model is an abstraction of spatial entities and their interconnections in the real world. It is the basis for describing and organizing spatial data and designing spatial database patterns. In computer graphics, three-dimensional objects are usually described using a three-dimensional spatial data model (a three-dimensional model), which is then displayed by a computer or other video device. The displayed 3D model can be a real-world entity or a fictional thing that can be as small as an atom or as large as a large size. Anything that exists in physics and nature can be represented by a three-dimensional model.
三维模型包括几何和纹理两部分。 其中, 几何部分主要分为三种: 基于矢 量的表面模型、 基于体元的实体模型和混合模型。  The 3D model consists of two parts, geometry and texture. Among them, the geometric part is mainly divided into three types: a vector model based on a vector, a solid model based on a voxel, and a mixed model.
许多三维模型需要使用纹理进行覆盖,将纹理排列放到三维模型上的过程 称作纹理映射。 纹理就是一个图像,但是它可以让模型更加细致并且看起来更 力口真实。  Many 3D models need to be covered with textures, and the process of placing textures onto a 3D model is called texture mapping. Texture is an image, but it makes the model more detailed and looks more realistic.
随着科学技术的不断进步, 在计算机图形学、 虚拟现实、 城市规划、 文物 修复、 动画游戏、 计算机辅助设计、 地理信息系统、 医学图形等领域越来越多 地应用到三维图形。应用的需求带动了采集技术的发展,现在的机载激光扫描、 高分辨率卫星影像,三维数字摄像和扫描系统等高效的空间数据获取方法使得 生成高分辨率的三维模型成为现实,但也使得三维模型数据的数据量呈几何级 数增长。 因为三维物体表面细节的表现往往需要纹理( Texture-Compression, 也称之为材质)来实现, 那么越是高分辨率越是真彩色的纹理自然表现力也是 越强, 三维模型的高分辨率(或者叫高精度)越高, 三维模型需要的纹理就越 多, 数据量也就越大, 绘制时用的时间越长。 同时, Internet也已经成为一种数 据共享、 分布式存储、 分布式计算、 传输、 可视化等的基础平台, 因此一个系 统所需要绘制的三维模型可能分布式存储在网络环境中, 甚至是异构环境中, 那么如何实现在一个客户端显示所需用的分布式存储的三维模型,也就是如何 实现三维模型数据的分布式绘图, 成为一个迫切需要解决的问题。 With the continuous advancement of science and technology, it is increasingly applied to 3D graphics in the fields of computer graphics, virtual reality, urban planning, cultural relics, animation games, computer-aided design, geographic information systems, medical graphics, and the like. The demand for applications has led to the development of acquisition technology. The efficient spatial data acquisition methods such as airborne laser scanning, high-resolution satellite imagery, 3D digital camera and scanning system make the generation of high-resolution 3D models a reality, but also make The amount of data in the 3D model data increases geometrically. Because the surface detail of a three-dimensional object often requires texture (Text-Compression, also called material) to achieve, then the higher the resolution, the more true the natural texture of the texture is. The stronger the higher the resolution (or high precision) of the 3D model, the more texture the 3D model requires, the larger the amount of data, and the longer it takes to draw. At the same time, the Internet has become a basic platform for data sharing, distributed storage, distributed computing, transmission, visualization, etc., so the 3D models that a system needs to draw may be distributed and stored in a network environment, or even a heterogeneous environment. In the middle, how to realize the three-dimensional model of the distributed storage required for display on a client, that is, how to realize the distributed drawing of the three-dimensional model data becomes an urgent problem to be solved.
发明内容 为解决上述技术问题,本发明实施例提供了一种三维模型数据分布式绘图 方法及装置, 技术方案如下: SUMMARY OF THE INVENTION In order to solve the above technical problem, an embodiment of the present invention provides a method and an apparatus for distributed drawing of three-dimensional model data, and the technical solution is as follows:
一种三维模型数据分布式绘图方法, 包括:  A three-dimensional model data distributed drawing method, comprising:
向多个请求接收端发送绘制数据请求,所述绘制数据请求中携带视图控制 参数;  Sending a drawing data request to the plurality of request receiving ends, where the drawing data request carries a view control parameter;
接收所述请求接收端反馈的、与所述绘制数据请求对应的绘制后数据, 所 述绘制后数据包含请求接收端根据视图控制参数绘制三维模型数据所对应的 图像以及所述图像上各像素对应的合成标识量;  Receiving the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the post-rendering data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter, and corresponding to each pixel on the image Synthetic identification amount;
根据所述绘制后数据中各像素的合成标识量,对所接收到的绘制后数据进 行合成, 以确定合成后的图像为三维模型数据分布式绘图后的图像。  The received post-rendered data is synthesized according to the combined identification amount of each pixel in the drawn data to determine that the synthesized image is a distributed-drawn image of the three-dimensional model data.
相对应的, 本发明实施例提供一种三维模型数据分布式绘图装置, 包括: 请求发送模块, 用于向多个请求接收端发送绘制数据请求, 所述绘制数据 请求中携带视图控制参数;  Correspondingly, the embodiment of the present invention provides a three-dimensional model data distributed drawing device, including: a request sending module, configured to send a drawing data request to a plurality of request receiving ends, where the drawing data request carries a view control parameter;
数据接收模块, 用于接收所述请求接收端反馈的、与所述绘制数据请求对 应的绘制后数据,所述绘制后数据包含请求接收端根据视图控制参数绘制三维 模型数据所对应的图像以及所述图像上各像素对应的合成标识量;  a data receiving module, configured to receive the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the drawn data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter a composite identification amount corresponding to each pixel on the image;
合并处理模块, 用于根据所述绘制后数据中各像素的合成标识量,对所接 收到的绘制后数据进行合成。  The merging processing module is configured to synthesize the received post-rendered data according to the combined identification quantity of each pixel in the drawn data.
本发明实施例还提供一种三维模型数据分布式绘图方法, 包括: 接收请求发送端发送的绘制数据请求,所述绘制数据请求携带视图控制参 数, 所述视图控制参数包括: 视图窗口的外包矩形、 视点参数和投影参数; 根据所述视图控制参数绘制三维模型数据,并生成与所述视图控制参数对 应的视图窗口的外包矩形大小相同的图像; The embodiment of the present invention further provides a three-dimensional model data distributed drawing method, including: receiving a drawing data request sent by a requesting sending end, the drawing data request carrying a view control parameter, where the view control parameter includes: an outsourcing rectangle of the view window , viewpoint parameters and projection parameters; And drawing three-dimensional model data according to the view control parameter, and generating an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
获取所述图像上各像素深度,并将所述像素深度用来构成对应像素的合成 标识量,所述像素深度用于判断各像素所对应的三维模型数据距离所述视图控 制参数所确定的视点的距离的远近;  Obtaining a depth of each pixel on the image, and using the pixel depth to form a composite identifier of the corresponding pixel, where the pixel depth is used to determine that the three-dimensional model data corresponding to each pixel is determined by the view control parameter The distance of the distance;
将所述绘制后的图像和各像素对应的合成标识量作为绘制后数据发送给 所述请求发送端。  And sending the drawn image and the combined identification amount corresponding to each pixel to the request transmitting end as the drawn data.
相对应的, 本发明实施例提供一种三维模型数据分布式绘图装置, 包括: 请求接收模块, 用于接收请求发送端发送的绘制数据请求, 所述绘制数据 请求携带视图控制参数, 所述视图控制参数包括: 视图窗口的外包矩形、 视点 参数和投影参数;  Correspondingly, the embodiment of the present invention provides a three-dimensional model data distributed drawing apparatus, including: a request receiving module, configured to receive a drawing data request sent by a requesting sending end, where the drawing data request carries a view control parameter, the view Control parameters include: an outsourcing rectangle of the view window, viewpoint parameters, and projection parameters;
图像生成模块, 用于根据所述视图控制参数绘制三维模型数据, 并生成与 所述视图控制参数对应的视图窗口的外包矩形大小相同的图像;  An image generating module, configured to draw three-dimensional model data according to the view control parameter, and generate an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter;
标识量生成模块, 用于获取所述图像上各像素深度, 并将所述像素深度用 来构成对应像素的合成标识量,所述像素深度用于判断各像素所对应的三维模 型数据距离所述视图控制参数所确定的视点的距离的远近;  An identifier quantity generating module, configured to acquire a depth of each pixel on the image, and use the pixel depth to form a combined identifier quantity of the corresponding pixel, where the pixel depth is used to determine a distance of the three-dimensional model data corresponding to each pixel The distance of the viewpoint determined by the view control parameter;
数据发送模块,用于将所述绘制后的图像和各像素对应的合成标识量作为 绘制后数据发送给所述请求发送端。 本发明实施例所提供的技术方案中, 当需要绘制三维模型数据时,请求发 送端向多个请求接收端发送相应的携带有视图控制参数的绘制数据请求,并当 接收到所述请求接收端反馈的与所述请求对应的、包含根据视图控制参数绘制 三维模型数据所对应的图像以及所述图像上各像素对应的合成标识量的绘制 后数据后, 根据各像素的合成标识量, 对多个图像进行合成处理, 以确定合成 后的图像为三维模型数据分布式绘图后的图像。本发明所提供的方案中,通过 向多个请求接收端发送相应的绘制数据请求,并将请求接收端反馈的结果进行 合成处理, 以此实现三维模型数据的分布式绘图。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作筒单地介绍,显而易见地, 下面描述 中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。 And a data sending module, configured to send the drawn image and the combined identifier amount corresponding to each pixel to the request sending end. In the technical solution provided by the embodiment of the present invention, when the three-dimensional model data needs to be drawn, the requesting sending end sends a corresponding drawing data request carrying the view control parameter to the plurality of request receiving ends, and when receiving the request receiving end After the image corresponding to the request, including the image corresponding to the three-dimensional model data according to the view control parameter and the combined identifier of the corresponding pixel on the image, the number of the combined identifiers of each pixel is The images are synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data. In the solution provided by the present invention, distributed drawing of three-dimensional model data is realized by transmitting corresponding drawing data requests to a plurality of request receiving ends, and synthesizing the results fed back by the request receiving end. DRAWINGS In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description It is merely some embodiments of the present invention, and those skilled in the art can obtain other drawings according to these drawings without any creative work.
图 1 为本发明实施例所提供的一种三维模型数据分布式绘图方法的第一 种流程图;  FIG. 1 is a first flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention;
图 2 为本发明实施例所提供的一种三维模型数据分布式绘图方法的第二 种流程图;  2 is a second flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention;
图 3 为本发明实施例所提供的一种三维模型数据分布式绘图方法的第三 种流程图;  FIG. 3 is a third flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention; FIG.
图 4 为本发明实施例所提供的一种三维模型数据分布式绘图方法的第四 种流程图;  4 is a fourth flowchart of a method for distributed drawing of three-dimensional model data according to an embodiment of the present invention;
图 5为本发明实施例所提供的 Z緩沖器算法的第一种坐标示意图; 图 6为本发明实施例所提供的 Z緩沖器算法的第二种坐标示意图; 图 7为本发明实施例所提供的 Z緩沖器算法的第三种坐标示意图; 图 8 为本发明实施例所提供的一种三维模型数据分布式绘图装置的第一 种结构示意图;  FIG. 5 is a schematic diagram of a first type of coordinates of a Z-buffer algorithm according to an embodiment of the present invention; FIG. 6 is a second schematic diagram of a Z-buffer algorithm according to an embodiment of the present invention; A third schematic diagram of a Z-buffer algorithm is provided; FIG. 8 is a schematic diagram of a first structure of a three-dimensional model data distributed drawing device according to an embodiment of the present invention;
图 9 为本发明实施例所提供的一种三维模型数据分布式绘图装置的第二 种结构示意图。  FIG. 9 is a second structural diagram of a three-dimensional model data distributed drawing apparatus according to an embodiment of the present invention.
具体实施方式 为了实现将分布式存储的三维模型进行分布式绘制,然后有效地显示在一 个客户请求端, 即实现三维模型数据的分布式绘图, 本发明实施例提供了一种 三维模型数据分布式绘图方法及装置。该三维模型数据分布式绘图方法的基本 思想是: DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In order to realize distributed rendering of a distributed stored 3D model and then effectively display it on a client request side, that is, to realize distributed drawing of 3D model data, an embodiment of the present invention provides a 3D model data distribution. Drawing method and device. The basic idea of the three-dimensional model data distributed drawing method is:
当需要绘制三维模型数据时,请求发送端向多个请求接收端发送包含相同 视图控制参数的相应绘制数据请求; 各请求接收端在接收到绘制数据请求后, 反馈相应的绘制后数据;而请求发送端在接收到各请求接收端反馈的绘制后数 据后,对多个绘制后数据进行合成处理, 以确定合成后的图像为三维模型数据 分布式绘图后的图像。 因此,本发明实施例所提供的方案可以有效实现三维模型数据的分布式绘 图。 When the three-dimensional model data needs to be drawn, the request sending end sends a corresponding drawing data request containing the same view control parameter to the plurality of request receiving ends; each request receiving end feeds back the corresponding drawn data after receiving the drawing data request; After receiving the post-rendered data fed back by each request receiving end, the transmitting end synthesizes the plurality of post-rendered data to determine that the synthesized image is a distributed image of the three-dimensional model data. Therefore, the solution provided by the embodiment of the present invention can effectively implement distributed drawing of three-dimensional model data.
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、 完整地描述, 显然, 所描述的实施例仅是本发明一部分实施例, 而不是全 部的实施例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造性 劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。  BRIEF DESCRIPTION OF THE DRAWINGS The technical solutions in the embodiments of the present invention will be described in detail below with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
为了方便对本发明实施例所提供的方案的理解,首先对三维模型在视图窗 口中的显示过程进行筒单介绍。 三维模型在视图窗口中的显示过程一般为: 首先通过空间数据索引将符合给定空间条件的三维模型取出来经过传输 介质传给三维模型使用者 (如客户端); 然后对三维模型数据进行一系列的坐 标变换和处理之后, 变换为二维图像上的坐标点; 根据显示参数, 三维模型最 终通过绘图算法栅格化成图像像素,绘制成一幅栅格图像,在客户端显示或输 出 (如计算机屏幕显示、 在纸上打印输出及生成图像文件输出等)。 其中三维 模型的绘制, 最终被绘图算法归结为对一个个像素的操作, 最终能够被显示出 来的都是绘制在相同像素上的三维模型数据中距离观察点最近的三维模型数 据所绘制的像素。  In order to facilitate the understanding of the solution provided by the embodiment of the present invention, the display process of the three-dimensional model in the view window is first introduced. The display process of the 3D model in the view window is generally as follows: First, the 3D model conforming to the given spatial condition is taken out through the spatial data index and transmitted to the 3D model user (such as the client) through the transmission medium; then, the 3D model data is performed. After the series of coordinate transformation and processing, transform into coordinate points on the 2D image; according to the display parameters, the 3D model is finally rasterized into image pixels by the drawing algorithm, drawn into a raster image, displayed or output on the client (such as a computer Screen display, printout on paper, and generation of image file output, etc.). The drawing of the 3D model is finally reduced by the drawing algorithm to the operation of one pixel. Finally, the pixels drawn by the 3D model data closest to the observation point in the 3D model data drawn on the same pixel can be displayed.
因此,本发明提出以相同的视图控制参数来控制三维模型数据的分布式绘 制, 同时记录图像上每个像素的深度, 用来判断像素所对应的三维模型数据距 离所述视图控制参数所确定的视点的距离的远近, 构成相应像素的合成标示 量, 最后依据像素的合成标示量对绘制后的多个图像进行合成,确定合成后的 图像为三维模型数据分布式绘图后的图像。  Therefore, the present invention proposes to control the distributed rendering of the three-dimensional model data by using the same view control parameter, and simultaneously recording the depth of each pixel on the image, and determining the three-dimensional model data corresponding to the pixel from the view control parameter. The distance between the viewpoints constitutes a composite marker amount of the corresponding pixel, and finally the plurality of images after the image are synthesized according to the combined marker amount of the pixel, and the combined image is determined to be a distributed image of the three-dimensional model data.
下面首先从请求发送端的角度,对本发明实施例所提供的一种三维模型数 据分布式绘图方法进行介绍。 所述请求发送端可以为电脑设备、 手机设备等。  In the following, a three-dimensional model data distributed drawing method provided by an embodiment of the present invention is introduced from the perspective of the requesting sender. The request sending end may be a computer device, a mobile phone device, or the like.
如图 1所示, 一种三维模型数据分布式绘图方法, 可以包括:  As shown in FIG. 1, a three-dimensional model data distributed drawing method may include:
步骤 S101 , 请求发送端向多个请求接收端发送绘制数据请求, 所述绘制 数据请求中携带视图控制参数;  Step S101, the requesting sending end sends a drawing data request to the plurality of request receiving ends, where the drawing data request carries a view control parameter;
可以理解的是,所述请求接收端可以为图像处理服务器或具有图像处理功 能的其他设备等。  It can be understood that the request receiving end can be an image processing server or other device having image processing functions and the like.
在多个请求接收端存储着请求发送端所需显示的三维模型数据的场景下, 当需要绘制三维模型数据时,请求发送端则根据进行三维模型数据显示的视图 窗口所确定视图控制参数, 生成相应的绘制数据请求, 并将所生成的绘制数据 请求发送给相应的请求接收端。 In a scenario where multiple request receiving ends store the 3D model data required to be displayed by the transmitting end, when the 3D model data needs to be drawn, the request sending end is based on the view of the 3D model data display. The view control parameter determined by the window generates a corresponding drawing data request, and sends the generated drawing data request to the corresponding request receiving end.
其中, 所述视图控制参数可以包括:  The view control parameter may include:
视图窗口的外包矩形,视点参数和投影参数; 所述视点参数包括视点在世 界坐标系中的位置6^。,^。), 其中 U。,z。表示视点在世界坐标系中的三个分 量、 视点所观察的目标位置 A(X。, ,Z。)和虚拟照相机向上的向量" ^0^,^,^); 通过视点参数可以确定一个变换矩阵,将原始坐标系中的顶点坐标变换到视点 坐标系下。 投影参数包括: 正交投影和透视投影。 或者是通过上述参数得到的 视图矩阵和投影矩阵。 The outer rectangle of the view window, the viewpoint parameters and the projection parameters; the viewpoint parameters include the position of the viewpoint in the world coordinate system 6 ^. , ^. ), where U. , z . Represents the three components of the viewpoint in the world coordinate system, the target position A (X . , , Z . ) observed by the viewpoint, and the vector " ^ 0 ^, ^, ^) of the virtual camera upward; a transformation can be determined by the viewpoint parameter The matrix transforms the coordinates of the vertices in the original coordinate system to the viewpoint coordinate system. The projection parameters include: orthogonal projection and perspective projection, or a view matrix and a projection matrix obtained by the above parameters.
步骤 S102, 接收所述请求接收端反馈的、 与所述绘制数据请求对应的绘 制后数据;  Step S102, receiving the post-drawing data corresponding to the drawing data request fed back by the request receiving end;
其中,所述绘制后数据包含请求接收端根据视图控制参数绘制三维模型数 据所对应的图像以及所述图像上各像素对应的合成标识量。  The post-rendering data includes an image corresponding to the requesting receiving end to draw the three-dimensional model data according to the view control parameter and a synthetic identifier corresponding to each pixel on the image.
请求接收端在接收到相应的绘制数据请求后,则根据所述绘制数据请求中 携带的视图控制参数绘制三维模型数据,生成与所述视图控制参数对应的视图 窗口的外包矩形大小相同的图像,同时记录所述图像上各像素对应的合成标识 量, 所述合成标识量包含有所述图像上像素的深度。 其中, 所述像素的深度用 于判断各像素所对应的三维模型数据距离所述视图控制参数所确定的视点的 距离的远近。 最后,请求接收端将绘制三维模型数据所对应的图像和各像素对 应的合成标识量作为绘制后数据反馈给所述请求发送端。可以理解的是, 所述 合成标识量中还可以包含三维模型的标识号、 像素的透明度等信息。  After receiving the corresponding drawing data request, the request receiving end draws the three-dimensional model data according to the view control parameter carried in the drawing data request, and generates an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter. Simultaneously recording a composite identification amount corresponding to each pixel on the image, the composite identification amount including a depth of the pixel on the image. The depth of the pixel is used to determine the distance of the three-dimensional model data corresponding to each pixel from the viewpoint determined by the view control parameter. Finally, the request receiving end feeds back the image corresponding to the three-dimensional model data and the combined identification amount corresponding to each pixel as the post-rendered data to the request transmitting end. It can be understood that the synthetic identifier may further include information such as an identification number of the three-dimensional model, transparency of the pixel, and the like.
需要说明的是, 本实施例中,依据视图控制参数用栅格数据结构来表示视 图窗口的像素, 所述像素为视图窗口平面划分成的均匀网格单元, 所述像素为 栅格数据中的基本信息存储单元,所述像素的坐标位置依据所述像素在所述视 图窗口中对应的行号和列号确定。 假设用 z Value表示为像素的深度(即 z 坐 标), 根据不同的系统, 如果像素深度值越小离视点越近, 则表示像素深度的 栅格数据的初始值赋极大值; 如果像素深度值越大离视点越近, 则表示像素深 度的栅格数据的初始值赋极小值。 其中, 像素深度为初始值时, 意味着所述像 素还没有被任何三维模型所绘制。  It should be noted that, in this embodiment, the pixels of the view window are represented by the raster data structure according to the view control parameter, and the pixels are uniform grid cells divided by the view window plane, and the pixels are in the raster data. The basic information storage unit determines a coordinate position of the pixel according to a corresponding row number and column number of the pixel in the view window. Assume that z Value is expressed as the depth of the pixel (ie, the z coordinate). According to different systems, if the pixel depth value is smaller, the closer to the viewpoint, the initial value of the raster data representing the pixel depth is maximized; if the pixel depth The larger the value is, the closer the viewpoint is, the smaller the initial value of the raster data representing the pixel depth. Wherein, when the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
步骤 S103 , 根据所述绘制后数据中各像素的合成标识量, 对所接收到的 绘制后数据进行合成,以确定合成后的图像为三维模型数据分布式绘图后的图 像。 Step S103, according to the combined identification quantity of each pixel in the drawn data, the received After the data is drawn, the data is synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data.
请求发送端在接收到请求接收端反馈的相应的绘制后数据后,则利用绘制 后数据中像素的合成标识量,对所接收的多个绘制后数据进行合成处理,也就 是对多个图像进行合成处理,使得在像素级上以近物取代远物, 并且与形体在 屏幕上出现的顺序无关。  After receiving the corresponding post-rendered data fed back by the request receiving end, the requesting transmitting end synthesizes the received plurality of post-rendered data by using the combined identification quantity of the pixels in the drawn data, that is, performs multiple images on the image. The synthesis process is such that the far object is replaced by a close object at the pixel level, and is independent of the order in which the form appears on the screen.
其中,根据所述绘制后数据各像素的合成标识量,对所接收到的绘制后数 据进行合成, 具体可以为:  The synthesized data is synthesized according to the combined identifier of each pixel of the data after the drawing, which may be:
当请求发送端接收到请求接收端反馈的绘制后数据后,判断是否存在在先 绘制后数据, 如果是, 则将当前所接收到的绘制后数据作为当前绘制后数据, 并且根据所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中 对应像素的合成标识量,对所述当前绘制后数据和所述在先绘制后数据进行合 成处理, 并将合成后数据作为新的在先绘制后数据; 否则, 将当前所接收到的 绘制后数据作为在先绘制后数据;  After the requesting sender receives the post-rendered data fed back by the requesting end, it determines whether there is pre-rendered data, and if so, the currently received post-rendered data is used as the current post-rendered data, and according to the current drawing a composite identification amount of each pixel in the subsequent data and a composite identification amount of the corresponding pixel in the previously drawn data, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as a new The data is drawn first; otherwise, the currently received data is taken as the data after the first drawing;
对接收到的绘制后数据进行上述处理,并确定最终合成后的图像为三维模 型数据分布式绘图后的图像。  The above-mentioned processing is performed on the received post-rendered data, and the final synthesized image is determined to be an image of the three-dimensional model data distributed drawing.
可以理解的是,可以根据实际情况对接收到的所有绘制后数据进行上述合 成处理,或者对接收到的且满足请求发送端特定需求的绘制后数据进行上述处 理, 都是合理的。 同时, 一般将请求发送端所接收的且满足特定需求的第一个 绘制后数据作为在先绘制后数据,而将后续接收到的且满足特定需求的绘制后 数据依次作为当前绘制后数据,与当前存在的在先绘制后数据进行特定的合成 处理, 并将合成后数据作为新的在先绘制后数据, 直到满足需求的绘制后数据 都与在先绘制后数据合成处理后, 形成三维模型数据分布式绘图后的图像。  It can be understood that it is reasonable to perform the above-mentioned synthesizing processing on all the received data after receiving according to the actual situation, or to perform the above processing on the received data that is received and meets the specific requirements of the requesting sender. At the same time, the first post-rendered data received by the requesting end and satisfying the specific requirement is generally used as the data after the first drawing, and the post-rendered data that is subsequently received and meets the specific requirement is sequentially used as the current post-rendered data, and The currently existing pre-rendered data is subjected to a specific synthesis process, and the synthesized data is used as a new pre-rendered data until the post-rendered data that satisfies the requirements are combined with the previously drawn data to form a three-dimensional model data. Distributed image after drawing.
更进一步的, 如图 2所示, 以像素深度值越小离视点越近的情况为例, 所 述根据所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中对 应像素的合成标识量,对所述当前绘制后数据和所述在先绘制后数据进行合成 处理, 可以包括:  Further, as shown in FIG. 2, as the case where the pixel depth value is smaller, the closer to the viewpoint, the image is corresponding to the synthesized identifier of each pixel in the currently drawn data and the previously drawn data. a composite identification quantity of the pixel, the composite processing of the current drawn data and the prior drawn data may include:
步骤 S201 , 将所述视图控制参数所对应的视图窗口上的一个未分析的像 素确定为当前待分析像素 Pi;  Step S201, determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed Pi;
绘制后数据中的图像是请求接收端在接收到相应的绘制数据请求后,根据 所述绘制数据请求中携带的视图控制参数绘制三维模型数据,生成与所述视图 控制参数对应的视图窗口的外包矩形大小相同的图像,也就是所述视图控制参 数所对应的视图窗口上的像素与所述当前绘制后数据中的图像的像素以及所 述在先绘制后数据中的图像的像素是一一对应的。 The image in the data after drawing is the request receiving end after receiving the corresponding drawing data request, according to And generating, by the view control parameter carried in the data request, the three-dimensional model data, and generating an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter, that is, the pixel on the view window corresponding to the view control parameter It is in one-to-one correspondence with the pixels of the image in the current drawn data and the pixels of the image in the previously drawn data.
步骤 S202, 将所述当前绘制后数据中当前待分析像素 Pi所对应的合成标 识量确定为当前待分析合成标识量 Zi;  Step S202, determining a synthetic identifier corresponding to the current pixel to be analyzed in the currently drawn data as the current synthetic identifier Zi to be analyzed;
步骤 S203, 判断所述当前待分析合成标识量 Zi中记录的像素深度是否等 于初始值, 如果是, 则执行步骤 S207; 否则, 执行步骤 S204;  Step S203, it is determined whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is equal to the initial value, and if yes, step S207 is performed; otherwise, step S204 is performed;
其中, 本实施例所述的像素深度初始值为极大值。 可以理解的是, 根据不 同的系统,如果像素深度值越小离视点越近,则所述像素深度初始值赋极大值; 如果像素深度值越大离视点越近, 则所述像素深度初始值赋极小值。 其中, 像 素深度为初始值时, 意味着所述像素还没有被任何三维模型所绘制。  The initial pixel depth value in this embodiment is a maximum value. It can be understood that, according to different systems, if the pixel depth value is smaller, the closer to the viewpoint, the pixel depth initial value is a maximum value; if the pixel depth value is larger, the closer to the viewpoint, the pixel depth initial The value is assigned a minimum value. Wherein, when the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
步骤 S204, 获得所述在先绘制后数据中当前待分析像素 Pi所对应的合成 标识量 Zi,;  Step S204: Obtain a synthetic identifier Zi corresponding to the pixel P to be analyzed in the data that is previously drawn.
步骤 S205, 判断所述当前待分析合成标识量 Zi中记录的像素深度是否小 于所述在先绘制后数据中当前待分析像素 Pi所对应的合成标识量 Zi,所记录的 像素深度, 如果是, 则执行步骤 S206; 否则, 执行步骤 S207;  Step S205, determining whether the pixel depth recorded in the current to-be-analyzed synthetic identification amount Zi is smaller than the synthesized identification amount Zi corresponding to the current to-be-analyzed pixel Pi in the previously drawn data, and the recorded pixel depth, if yes, Then step S206 is performed; otherwise, step S207 is performed;
步骤 S206, 将所述当前待分析像素 Pi所对应的在先绘制后数据中的数据 替换为所述当前待分析像素 Pi所对应的当前绘制后数据中的数据, 执行步骤 S208;  Step S206, the data in the previously drawn data corresponding to the current pixel to be analyzed Pi is replaced by the data in the current mapped data corresponding to the current pixel to be analyzed, and step S208 is performed;
步骤 S207, 保留所述当前待分析像素 Pi所对应的在先绘制后数据中的数 据;  Step S207, retaining data in the previously drawn data corresponding to the current pixel to be analyzed Pi;
步骤 S208, 判断所述视图窗口中是否存在未被分析的像素, 如果是, 则 执行步骤 S201; 否则, 结束。  Step S208, determining whether there are unparsed pixels in the view window, and if yes, executing step S201; otherwise, ending.
当像素深度值越小离视点越近时,通过上述方式可以完成对所述当前绘制 后数据和所述在先绘制后数据进行合成处理。  When the pixel depth value is smaller, the closer to the viewpoint, the synthesis processing of the current post-rendered data and the pre-rendered data can be completed in the above manner.
同时, 如图 3所示, 以像素深度值越大离视点越近的情况为例, 所述根据 所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中对应像素 的合成标识量, 对所述当前绘制后数据和所述在先绘制后数据进行合成处理, 可以包括: 步骤 S301 , 将所述视图控制参数所对应的视图窗口上的一个未分析的像 素确定为当前待分析像素 Pi; Meanwhile, as shown in FIG. 3, for example, the case where the pixel depth value is closer to the viewpoint, the sum of the synthesized identifier of each pixel in the currently drawn data and the corresponding pixel in the previously drawn data. Synthesizing the identifier, and synthesizing the current post-rendered data and the pre-rendered data may include: Step S301, determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed Pi;
绘制后数据中的图像是请求接收端在接收到相应的绘制数据请求后,根据 所述绘制数据请求中携带的视图控制参数绘制三维模型数据,生成与所述视图 控制参数对应的视图窗口的外包矩形大小相同的图像,也就是所述视图控制参 数所对应的视图窗口上的像素与所述当前绘制后数据中的图像的像素以及所 述在先绘制后数据中的图像的像素是一一对应的。  After the image is drawn, the request receiving end draws the three-dimensional model data according to the view control parameter carried in the drawing data request, and generates an outsourcing of the view window corresponding to the view control parameter after receiving the corresponding drawing data request. An image having the same size of the rectangle, that is, a pixel on the view window corresponding to the view control parameter and a pixel of the image in the current drawn data and a pixel of the image in the previously drawn data are in one-to-one correspondence of.
步骤 S302, 将所述当前绘制后数据中当前待分析像素 Pi所对应的合成标 识量确定为当前待分析合成标识量 Zi;  Step S302, determining a synthetic identifier corresponding to the current pixel to be analyzed in the currently drawn data as the current synthetic identifier Zi to be analyzed;
步骤 S303, 判断所述当前待分析合成标识量 Zi中记录的像素深度是否等 于初始值, 如果是, 则执行步骤 S307; 否则, 执行步骤 S304;  Step S303, it is determined whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is equal to the initial value, and if yes, step S307 is performed; otherwise, step S304 is performed;
其中, 本实施例所述的像素深度初始值为极小值。 可以理解的是, 根据不 同的系统,如果像素深度值越小离视点越近,则所述像素深度初始值赋极大值; 如果像素深度值越大离视点越近, 则所述像素深度初始值赋极小值。 其中, 像 素深度为初始值时, 意味着所述像素还没有被任何三维模型所绘制。  The initial value of the pixel depth described in this embodiment is a minimum value. It can be understood that, according to different systems, if the pixel depth value is smaller, the closer to the viewpoint, the pixel depth initial value is a maximum value; if the pixel depth value is larger, the closer to the viewpoint, the pixel depth initial The value is assigned a minimum value. Wherein, when the pixel depth is an initial value, it means that the pixel has not been drawn by any three-dimensional model.
步骤 S304, 获得所述在先绘制后数据中当前待分析像素 Pi所对应的合成 标识量 Zi,;  Step S304, obtaining a synthetic identifier Zi corresponding to the pixel P to be analyzed in the previously drawn data,
步骤 S305, 判断所述当前待分析合成标识量 Zi中记录的像素深度是否大 于所述在先绘制后数据中当前待分析像素 Pi所对应的合成标识量 Zi,所记录的 像素深度, 如果是, 则执行步骤 S306; 否则, 执行步骤 S307;  Step S305, determining whether the pixel depth recorded in the current to-be-analyzed synthetic identifier Zi is greater than the synthesized identification amount Zi corresponding to the current to-be-analyzed pixel Pi in the previously drawn data, and the recorded pixel depth, if yes, Then step S306 is performed; otherwise, step S307 is performed;
步骤 S306, 将所述当前待分析像素 Pi所对应的在先绘制后数据中的数据 替换为所述当前待分析像素 Pi所对应的当前绘制后数据中的数据, 执行步骤 S308;  Step S306, the data in the previously drawn data corresponding to the current pixel to be analyzed Pi is replaced by the data in the current drawn data corresponding to the current pixel to be analyzed, and step S308 is performed;
步骤 S307, 保留所述当前待分析像素 Pi所对应的在先绘制后数据中的数 据;  Step S307, retaining data in the previously drawn data corresponding to the current pixel to be analyzed Pi;
步骤 S308, 判断所述视图窗口中是否存在未被分析的像素, 如果是, 则 执行步骤 S301; 否则, 结束。  Step S308, determining whether there are pixels that are not analyzed in the view window, and if yes, executing step S301; otherwise, ending.
当像素深度值越大离视点越近时,通过上述方式可以完成对所述当前绘制 后数据和所述在先绘制后数据进行合成处理。  When the pixel depth value is larger, the closer to the viewpoint, the synthesis processing of the current post-rendered data and the pre-rendered data can be completed in the above manner.
可以理解的是,本实施例所提供的对多个图像的合成处理方式仅仅是一种 示例, 并不应该构成对本发明方案的限制。 It can be understood that the method for synthesizing multiple images provided by this embodiment is only one type. The examples should not be construed as limiting the scope of the invention.
下面从请求接收端的角度,对本发明的所提供一种三维模型数据分布式绘 图方法进行介绍。  In the following, from the perspective of the request receiving end, a three-dimensional model data distributed drawing method provided by the present invention is introduced.
如图 4所示, 一种三维模型数据分布式绘图方法, 可以包括:  As shown in FIG. 4, a three-dimensional model data distributed drawing method may include:
步骤 S401 , 接收请求发送端发送的绘制数据请求, 所述绘制数据请求携 带视图控制参数;  Step S401: Receive a request for drawing data sent by the sending end, where the drawing data request carries a view control parameter;
其中, 所述视图控制参数包括: 视图窗口的外包矩形、 视点参数和投影参 数。  The view control parameters include: an outsourcing rectangle of the view window, a viewpoint parameter, and a projection parameter.
步骤 S402, 根据所述视图控制参数绘制三维模型数据, 并生成与所述视 图控制参数对应的视图窗口的外包矩形大小相同的图像;  Step S402, drawing three-dimensional model data according to the view control parameter, and generating an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
步骤 S403, 获取所述图像上各像素深度, 并将所述像素深度用来构成对 应像素的合成标识量,所述像素深度用于判断各像素所对应的三维模型数据距 离所述视图控制参数所确定的视点的距离的远近;  Step S403: Obtain a depth of each pixel on the image, and use the pixel depth to form a combined identifier of the corresponding pixel, where the pixel depth is used to determine that the three-dimensional model data corresponding to each pixel is away from the view control parameter. The distance of the determined viewpoint;
可以理解的是, 所述合成标识量还可以包括三维模型的标号、像素透明度 等信息。  It can be understood that the synthetic identifier may further include information such as a label of the three-dimensional model, pixel transparency, and the like.
其中,所述图像上各像素深度的计算方式可以根据实际情况选择不同的算 法, 例如: Z緩沖器算法。  Wherein, the calculation method of each pixel depth on the image may select different algorithms according to actual conditions, for example: Z buffer algorithm.
下面以 Z緩沖器算法为例, 对像素深度的计算进行介绍:  The Z buffer algorithm is taken as an example to introduce the calculation of pixel depth:
Z緩沖器算法也叫深度緩沖器算法, 属于图像空间消隐算法, 其首先根据 视图控制参数将三维模型数据的原始坐标变换得到所述视图窗口的视图坐标, 然后进行分析计算。  The Z-buffer algorithm, also called the depth buffer algorithm, belongs to the image space blanking algorithm, which first transforms the original coordinates of the three-dimensional model data according to the view control parameters to obtain the view coordinates of the view window, and then performs analysis and calculation.
深度緩沖器算法有两个緩沖器: 深度緩沖器和帧緩沖器, 对应两个数组: 深度数组 depth ( x, y )和属性数组 intensity ( x, y )。 前者存放着图像空间每 个可见像素的 z坐标, 后者用来存储图像空间每个可见像素的属性(光强或颜 色)值。  The depth buffer algorithm has two buffers: a depth buffer and a frame buffer, corresponding to two arrays: a depth array depth ( x, y ) and an attribute array intensity ( x, y ). The former stores the z coordinate of each visible pixel of the image space, and the latter stores the attribute (light intensity or color) value of each visible pixel of the image space.
其中, Z緩沖器算法基本思想如下:  Among them, the basic idea of the Z buffer algorithm is as follows:
将投影平面每个像素所对应的所有面片 (平面或曲面) 的深度进行比较, 然后取离视线最近面片的属性值作为该像素的属性值。  Compares the depths of all patches (planes or surfaces) corresponding to each pixel of the projection plane, and then takes the attribute value of the nearest patch from the line of sight as the attribute value of the pixel.
算法通常沿着观察坐标系的 Z轴来计算各物体表面距观察平面的深度,它 对场景中的各个物体表面单独进行处理,且在各面片上逐点进行。物体的描述 转化为投影坐标系之后, 多边形面上的每个点 (X, y, z ) 均对应于观察平面 上的正投影点(X, y)。 因而, 对于观察平面上的每个像素(X, y ), 其深度的 比较可通过它们 z值的比较来实现。 对于右手坐标系, z值最大的点应是可见 的。 如图 5所示, 在观察平面上, 面 si相对面 s2、 面 s3离视点最近, 因此它 在该位置 (x,y)可见。 The algorithm usually calculates the depth of each object's surface from the observation plane along the Z-axis of the observation coordinate system. It processes the surface of each object in the scene separately and performs point by point on each patch. Description of the object After being transformed into a projected coordinate system, each point (X, y, z) on the polygon surface corresponds to the orthographic projection point (X, y) on the observation plane. Thus, for each pixel (X, y) on the viewing plane, the comparison of their depths can be achieved by comparison of their z values. For the right-handed coordinate system, the point with the largest z value should be visible. As shown in Fig. 5, on the observation plane, the face si is opposite to the face s2 and the face s3 is closest to the viewpoint, so it is visible at this position (x, y).
Z緩沖器算法步骤如下:  The Z buffer algorithm steps are as follows:
初始时,深度緩沖器所有单元均置为离视点最远的值, 帧緩沖器各单元均 置为背景色, 然后逐个处理多边形表中的各面片。 每扫描一行, 计算该行各像 素 (X, y )所对应的深度值 z ( X, y ), 并将结果与深度緩沖器中该像素单元 所存储的深度值 depth (x, y)进行比较。  Initially, all cells of the depth buffer are placed at the farthest value from the viewpoint. Each unit of the frame buffer is set to the background color, and then each patch in the polygon table is processed one by one. Each time a row is scanned, the depth value z ( X, y ) corresponding to each pixel (X, y ) of the row is calculated, and the result is compared with the depth value depth (x, y) stored in the pixel unit in the depth buffer. .
根据不同的系统, 如果像素深度值越小离视点越近:  Depending on the system, the smaller the pixel depth value, the closer the viewpoint is:
# z<depth (x, y ), 贝1 J depth (x, y ) =z # z<depth (x, y ), Bay 1 J depth (x, y ) = z
如果像素深度值越大离视点越近:  If the pixel depth value is larger, the closer to the viewpoint:
若 z>depth ( X, y ), 贝1 J depth ( x, y ) =z If z>depth ( X, y ), Bay 1 J depth ( x, y ) = z
而且将该像素的属性值 I (x, y)写入帧緩沖器, 即  And writing the attribute value I (x, y) of the pixel to the frame buffer, ie
intensity ( x, y) =1 (x, y )  Intensity ( x, y) =1 (x, y )
否则不变。  Otherwise it will not change.
其中, 利用 Z緩沖器算法计算像素深度可以具体如下:  Wherein, using the Z buffer algorithm to calculate the pixel depth can be as follows:
若已知多边形的方程, 则可用增量法计算扫描线每一个像素的深度。 设平面方程为:  If the equation of the polygon is known, the depth of each pixel of the scan line can be calculated in increments. Let the plane equation be:
Ax + By + Cz + D^O 则多边形面上的点 (X, y)所对应的深度值为: Ax + By + Cz + D^O The depth value corresponding to the point (X, y) on the polygon surface is:
C 由于所有扫描线上相邻点间的水平间距为 1个像素单位,扫描线行与行之 间的垂直间距也为 1。 因此可以利用这种连贯性来筒化计算过程, 如图 6、 图 7所示。 若已计算出 (x, y)点的深度值为^, 沿 X方向相邻连贯点 (x+1, y) 的深度值 zi+Ι可由下式计算: C Since the horizontal spacing between adjacent points on all scan lines is 1 pixel unit, the vertical spacing between the lines of the scan lines is also 1. Therefore, this consistency can be used to simplify the calculation process, as shown in Fig. 6 and Fig. 7. If the depth value of the (x, y) point has been calculated as ^, the depth value zi+Ι of the adjacent joint point (x+1, y) along the X direction can be calculated by:
[x + \)+By + D] _ A 沿着 y方向的计算应先计算出 y坐标的范围,然后从上至下逐个处理各个 。由最上方的顶扫描线出发,沿多边形左边界递归计算边界上各点的坐标:  [x + \)+By + D] _ A The calculation along the y direction should first calculate the range of y coordinates and then process each one from top to bottom. Starting from the top top scan line, recursively calculate the coordinates of the points on the boundary along the left edge of the polygon:
¾+1 (2) 3⁄4 + 1 (2)
m  m
这里 m为该边的斜率, 沿该边的深度也可以递归计算出来, 即:  Here m is the slope of the edge, and the depth along the edge can also be calculated recursively, namely:
A A
)+ (7j-Y)+D -+ B ) + ( 7j -Y)+D -+ B
m m (3)  m m (3)
C C 如果该边是一条垂直边界, 则计算公式筒化为:
Figure imgf000014_0001
对于每条扫描线, 首先根据公式(3)计算出与其相交的多边形最左边的 交点所对应的深度值, 然后, 该扫描线上所有的后续点由 (4) 式计算出来。
CC If the edge is a vertical boundary, the calculation formula is:
Figure imgf000014_0001
For each scan line, first calculate the depth value corresponding to the leftmost intersection of the polygon intersecting with it according to formula (3), and then all subsequent points on the scan line are calculated by (4).
所有的多边形处理完毕, 即得消隐后的图形, 也就获得了图像上每个像素 所对应的深度, 进而可构成像素所对应的合成标示量。  After all the polygons have been processed, the image after blanking is obtained, and the depth corresponding to each pixel on the image is obtained, which can constitute the composite mark corresponding to the pixel.
步骤 S404, 将所述绘制后的图像和各像素对应的合成标识量作为绘制后数 据发送给所述请求发送端。 本发明实施例所提供的技术方案中, 当需要绘制三维模型数据时,请求发 送端向多个请求接收端发送相应的携带有视图控制参数的绘制数据请求,并当 接收到所述请求接收端反馈的与所述请求对应的、包含根据视图控制参数绘制 三维模型数据所对应的图像以及所述图像上各像素对应的合成标识量的绘制 后数据后, 根据各像素的合成标识量, 对多个图像进行合成处理, 以确定合成 后的图像为三维模型数据分布式绘图后的图像。本发明所提供的方案中,通过 向多个请求接收端发送相应的绘制数据请求,并将请求接收端反馈的绘制后数 据进行合成处理, 以此实现三维模型数据的分布式绘图。 Step S404: Send the drawn image and the combined identification amount corresponding to each pixel as the post-rendered data to the request sending end. In the technical solution provided by the embodiment of the present invention, when the three-dimensional model data needs to be drawn, the requesting sending end sends a corresponding drawing data request carrying the view control parameter to the plurality of request receiving ends, and when receiving the request receiving end After the image corresponding to the request, including the image corresponding to the three-dimensional model data according to the view control parameter and the combined identifier of the corresponding pixel on the image, the number of the combined identifiers of each pixel is The images are synthesized to determine that the synthesized image is a distributed image of the three-dimensional model data. In the solution provided by the present invention, The corresponding drawing data request is sent to the plurality of request receiving ends, and the drawn data fed back by the request receiving end is synthesized, thereby realizing distributed drawing of the three-dimensional model data.
通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本 发明可借助软件加必需的通用硬件平台的方式来实现, 当然也可以通过硬件, 但很多情况下前者是更佳的实施方式。基于这样的理解, 本发明的技术方案本 质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计 算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 (可以是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述 方法的全部或部分步骤。 而前述的存储介质包括: 只读存储器(ROM )、 随机 存取存储器(RAM )、 磁碟或者光盘等各种可以存储程序代码的介质。 Through the description of the above method embodiments, those skilled in the art can clearly understand that the present invention can be implemented by means of software plus a necessary general hardware platform, and of course, can also be through hardware, but in many cases, the former is better. Implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium, including a plurality of instructions for causing a A computer device (which may be a personal computer, server, or network device, etc.) performs all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: a medium that can store program codes, such as a read only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
相应于上面的方法实施例,本发明实施例还提供一种三维模型数据分布式 绘图装置, 该装置作为请求发送端, 如图 8所示, 可以包括: Corresponding to the above method embodiment, the embodiment of the present invention further provides a three-dimensional model data distributed drawing device, as the request sending end, as shown in FIG. 8, the device may include:
请求发送模块 110, 用于向多个请求接收端发送绘制数据请求, 所述绘制 数据请求中携带视图控制参数;  The request sending module 110 is configured to send a drawing data request to the multiple request receiving ends, where the drawing data request carries a view control parameter;
数据接收模块 120, 用于接收所述请求接收端反馈的、 与所述绘制数据请 求对应的绘制后数据,所述绘制后数据包含请求接收端根据视图控制参数绘制 三维模型数据所对应的图像以及所述图像上各像素对应的合成标识量;  The data receiving module 120 is configured to receive the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the post-rendering data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter, and a combined identification amount corresponding to each pixel on the image;
合并处理模块 130, 用于根据所述绘制后数据中各像素的合成标识量, 对 所接收到的绘制后数据进行合成。  The merging processing module 130 is configured to synthesize the received post-rendered data according to the combined identification amount of each pixel in the drawn data.
可以理解的是,作为请求发送端的三维模型数据分布式绘图装置可以为电 脑设备、 手机设备等。  It can be understood that the three-dimensional model data distributed drawing device as the request transmitting end can be a computer device, a mobile phone device or the like.
其中, 合并处理模块 130, 可以包括:  The merge processing module 130 may include:
第一判断单元, 用于当接收到请求接收端反馈的绘制后数据后, 判断是否 存在在先绘制后数据, 如果是, 则触发合并处理单元; 否则, 触发在先数据确 定单元;  a first determining unit, configured to: after receiving the post-rendered data fed back by the request receiving end, determine whether there is data after the first drawing, and if yes, trigger the merge processing unit; otherwise, trigger the previous data determining unit;
合并处理单元, 用于将当前所接收到的绘制后数据作为当前绘制后数据, 并且根据所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中 所对应的像素的合成标识量,对所述当前绘制后数据和所述在先绘制后数据进 行合成处理, 并将合成后的数据作为新的在先绘制后数据; a merging processing unit, configured to use the currently received post-rendered data as the current post-rendered data, and according to the synthesized identification amount of each pixel in the currently drawn data and the previously drawn data a composite identification quantity of the corresponding pixel, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as new prior-drawn data;
在先数据确定单元,用于将当前所接收到的绘制后数据作为在先绘制后数 据。  The prior data determining unit is configured to use the currently received post-rendered data as the pre-rendered data.
本发明实施例还提供一种三维模型数据分布式绘图装置,该装置作为请求 接收端, 如图 9所示, 可以包括:  The embodiment of the present invention further provides a three-dimensional model data distributed drawing device, which is used as a request receiving end, as shown in FIG.
请求接收模块 210, 用于接收请求发送端发送的绘制数据请求, 所述绘制 数据请求携带视图控制参数, 所述视图控制参数包括: 视图窗口的外包矩形、 视点参数和投影参数;  The request receiving module 210 is configured to receive a drawing data request sent by the requesting sending end, where the drawing data request carries a view control parameter, where the view control parameter includes: an outsourcing rectangle, a view point parameter, and a projection parameter of the view window;
图像生成模块 220, 用于根据所述视图控制参数绘制三维模型数据, 并生 成与所述视图控制参数对应的视图窗口的外包矩形大小相同的图像;  The image generation module 220 is configured to draw the three-dimensional model data according to the view control parameter, and generate an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
标识量生成模块 230, 用于获取所述图像上各像素深度, 并将所述像素深 度用来构成对应像素的合成标识量,所述像素深度用于判断各像素所对应的三 维模型数据距离所述视图控制参数所确定的视点的距离的远近;  The identifier quantity generating module 230 is configured to acquire a depth of each pixel on the image, and use the pixel depth to form a combined identifier quantity of the corresponding pixel, where the pixel depth is used to determine a distance of a three-dimensional model data corresponding to each pixel. The distance of the viewpoint determined by the view control parameter;
数据发送模块 240, 用于将所述绘制后的图像和各像素对应的合成标识量 作为绘制后数据发送给所述请求发送端。  The data sending module 240 is configured to send the drawn image and the combined identifier amount corresponding to each pixel to the request sending end.
可以理解的是,作为请求接收端的三维模型数据分布式绘图装置可以为图 像处理服务器或具有图像处理功能的其他设备等。 对于装置或系统实施例而言, 由于其基本相应于方法实施例, 所以相关之 处参见方法实施例的部分说明即可。以上所描述的装置或系统实施例仅仅是示 意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开 的,作为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地 方, 或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分 或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造 性劳动的情况下, 即可以理解并实施。  It can be understood that the three-dimensional model data distributed drawing device as the request receiving end can be an image processing server or other device having image processing functions and the like. For a device or system embodiment, since it substantially corresponds to a method embodiment, reference is made to the partial description of the method embodiment. The apparatus or system embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie It can be located in one place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without undue creative labor.
在本发明所提供的几个实施例中, 应该理解到, 所揭露的系统, 装置和方 法, 在没有超过本申请的精神和范围内, 可以通过其他的方式实现。 当前的实 施例只是一种示范性的例子, 不应该作为限制, 所给出的具体内容不应该限制 本申请的目的。 例如, 所述单元或子单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单元或多个子单元结合一起。 另 外, 多个单元可以或组件可以结合或者可以集成到另一个系统, 或一些特征可 以忽略, 或不执行。 In the several embodiments provided by the present invention, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners without departing from the spirit and scope of the present application. The present embodiments are merely exemplary, and should not be taken as limiting, and the specific content given should not limit the purpose of the application. For example, the division of the unit or subunit is only a logical function division. In actual implementation, there may be another way of dividing, for example, multiple units or multiple sub-units are combined. In addition, multiple units may or may be combined or integrated into another system, or some features may be omitted or not implemented.
另外, 所描述系统, 装置和方法以及不同实施例的示意图, 在不超出本申 请的范围内, 可以与其它系统, 模块, 技术或方法结合或集成。 另一点, 所显 示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置 或单元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。  In addition, the described systems, apparatus, and methods, and the schematic diagrams of various embodiments, may be combined or integrated with other systems, modules, techniques or methods without departing from the scope of the present application. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通 技术人员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也应视为本发明的保护范围。  The above is only a specific embodiment of the present invention, and it should be noted that those skilled in the art can also make several improvements and retouchings without departing from the principles of the present invention. It should be considered as the scope of protection of the present invention.

Claims

权 利 要 求 Rights request
1、 一种三维模型数据分布式绘图方法, 其特征在于, 包括:  A method for distributed drawing of three-dimensional model data, comprising:
向多个请求接收端发送绘制数据请求,所述绘制数据请求中携带视图控制 参数;  Sending a drawing data request to the plurality of request receiving ends, where the drawing data request carries a view control parameter;
接收所述请求接收端反馈的、与所述绘制数据请求对应的绘制后数据, 所 述绘制后数据包含请求接收端根据视图控制参数绘制三维模型数据所对应的 图像以及所述图像上各像素对应的合成标识量;  Receiving the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the post-rendering data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter, and corresponding to each pixel on the image Synthetic identification amount;
根据所述绘制后数据中各像素的合成标识量,对所接收到的绘制后数据进 行合成, 以确定合成后的图像为三维模型数据分布式绘图后的图像。  The received post-rendered data is synthesized according to the combined identification amount of each pixel in the drawn data to determine that the synthesized image is a distributed-drawn image of the three-dimensional model data.
2、 根据权利要求 1所述的方法, 其特征在于, 所述视图控制参数包括: 视图窗口的外包矩形, 视点参数和投影参数;  2. The method according to claim 1, wherein the view control parameters comprise: an outsourcing rectangle of a view window, a viewpoint parameter and a projection parameter;
所述视点参数包括视点在世界坐标系中的位置、视点所观察的目标位置和 虚拟照相机向上的向量; 所述投影参数包括: 正交投影和透视投影;  The viewpoint parameters include a position of the viewpoint in the world coordinate system, a target position observed by the viewpoint, and a vector of the virtual camera upward; the projection parameters include: orthogonal projection and perspective projection;
或者包括: 当前视图窗口的外包矩形、依据视点参数和投影参数获得的视 图矩阵和投影矩阵。  Or include: an outer rectangle of the current view window, a view matrix and a projection matrix obtained from viewpoint parameters and projection parameters.
3、 根据权利要求 2所述的方法, 其特征在于, 所述合成标识量包括: 所述图像上像素的深度;  The method according to claim 2, wherein the synthetic identifier includes: a depth of a pixel on the image;
其中,所述像素的深度用于判断像素所对应的三维模型数据距离所述视图 控制参数所确定的视点的距离的远近。  The depth of the pixel is used to determine the distance of the three-dimensional model data corresponding to the pixel from the viewpoint determined by the view control parameter.
4、 根据权利要求 3所述的方法, 其特征在于, 所述根据所述绘制后数据 中各像素的合成标识量, 对所接收到的绘制后数据进行合成, 具体为:  The method according to claim 3, wherein the synthesizing the received data according to the synthesized identification quantity of each pixel in the drawn data is specifically:
当接收到请求接收端反馈的绘制后数据后, 判断是否存在在先绘制后数 据, 如果是, 则将当前所接收到的绘制后数据作为当前绘制后数据, 并且根据 所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中所对应的 像素的合成标识量,对所述当前绘制后数据和所述在先绘制后数据进行合成处 理, 并将合成后的数据作为新的在先绘制后数据; 否则, 将当前所接收到的绘 制后数据作为在先绘制后数据;  After receiving the post-rendered data fed back by the requesting end, it is determined whether there is data after the first drawing, and if so, the currently received post-rendering data is used as the current post-rendering data, and according to the current drawn data. a synthetic identification amount of each pixel and a combined identification amount of the pixel corresponding to the previously drawn data, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as a new The data is drawn first; otherwise, the currently received data is taken as the data after the first drawing;
对接收到的绘制后数据进行上述处理,并确定最终合成后的图像为三维模 型数据分布式绘图后的图像。  The above-mentioned processing is performed on the received post-rendered data, and the final synthesized image is determined to be an image of the three-dimensional model data distributed drawing.
5、 根据权利要求 4所述的方法, 其特征在于, 所述根据所述当前绘制后 数据中每个像素的合成标识量和在先绘制后数据中所对应的像素的合成标识 量, 对所述当前绘制后数据和所述在先绘制后数据进行合成处理, 包括: 将所述视图控制参数所对应的视图窗口上的一个未分析的像素确定为当 前待分析像素; The method according to claim 4, wherein the according to the current drawing a composite identification amount of each pixel in the data and a composite identification amount of the pixel corresponding to the data in the first drawing, and synthesizing the current drawn data and the previously drawn data, including: An unanalyzed pixel on the view window corresponding to the control parameter is determined as the current pixel to be analyzed;
将所述当前绘制后数据中当前待分析像素所对应的合成标识量确定为当 前待分析合成标识量;  Determining, by the currently drawn data, a synthetic identification quantity corresponding to the current pixel to be analyzed as a current synthetic identification quantity to be analyzed;
当所述当前待分析合成标识量中记录的像素深度等于初始值或者大于所 述在先绘制后数据中当前待分析像素所对应的合成标识量所记录的像素深度 时, 保留所述当前待分析像素所对应的在先绘制后数据中的数据;  Retaining the current to-be-analyzed when the pixel depth recorded in the currently-identified synthetic identifier is equal to an initial value or greater than a pixel depth recorded by the synthetic identifier corresponding to the current pixel to be analyzed in the previously drawn data. The data in the previously drawn data corresponding to the pixel;
当所述当前待分析合成标识量中记录的像素深度小于所述在先绘制后数 据中当前待分析像素所对应的合成标识量所记录的像素深度时,将所述当前待 分析像素所对应的在先绘制后数据中的数据替换为所述当前待分析像素所对 应的当前绘制后数据中的数据;  And when the pixel depth recorded in the current to-be-analyzed synthetic identifier is smaller than the pixel depth recorded in the synthetic identifier corresponding to the current to-be-analyzed pixel, the current pixel to be analyzed corresponds to The data in the first drawn data is replaced with the data in the current drawn data corresponding to the current pixel to be analyzed;
判断所述视图窗口中是否存在未被分析的像素,如果是, 则返回执行将所 述视图控制参数所对应的视图窗口上的一个未分析的像素确定为当前待分析 像素的步骤; 否则, 结束;  Determining whether there is an unanalyzed pixel in the view window, and if yes, returning to perform the step of determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed; otherwise, ending ;
其中, 所述初始值赋极大值, 并且像素深度值越小离视点越近。  Wherein, the initial value is a maximum value, and the smaller the pixel depth value is, the closer the viewpoint is.
6、 根据权利要求 4所述的方法, 其特征在于, 所述根据所述当前绘制后 数据中每个像素的合成标识量和在先绘制后数据中所对应的像素的合成标识 量, 对所述当前绘制后数据和所述在先绘制后数据进行合成处理, 包括: 将所述视图控制参数所对应的视图窗口上的一个未分析的像素确定为当 前待分析像素;  The method according to claim 4, wherein: according to the synthetic identification amount of each pixel in the current drawn data and the combined identification quantity of the pixel corresponding to the previously drawn data, And performing the synthesizing process on the current post-rendered data and the pre-rendered data, including: determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed;
将所述当前绘制后数据中当前待分析像素所对应的合成标识量确定为当 前待分析合成标识量;  Determining, by the currently drawn data, a synthetic identification quantity corresponding to the current pixel to be analyzed as a current synthetic identification quantity to be analyzed;
当所述当前待分析合成标识量中记录的像素深度等于初始值或者小于所 述在先绘制后数据中当前待分析像素所对应的合成标识量所记录的像素深度 时, 保留所述当前待分析像素所对应的在先绘制后数据中的数据;  Retaining the current to-be-analyzed when the pixel depth recorded in the current to-be-analyzed synthetic identifier is equal to the initial value or less than the pixel depth recorded by the synthetic identifier corresponding to the current pixel to be analyzed in the previously drawn data. The data in the previously drawn data corresponding to the pixel;
当所述当前待分析合成标识量中记录的像素深度大于所述在先绘制后数 据中当前待分析像素所对应的合成标识量所记录的像素深度时,将所述当前待 分析像素所对应的在先绘制后数据中的数据替换为所述当前待分析像素所对 应的当前绘制后数据中的数据; And when the pixel depth recorded in the current to-be-analyzed synthetic identifier is greater than the pixel depth recorded in the synthetic identifier corresponding to the current to-be-analyzed pixel in the pre-rendered data, the current pixel to be analyzed corresponds to The data in the first drawn data is replaced by the current pixel to be analyzed. The data in the current data that should be drawn;
判断所述视图窗口中是否存在未被分析的像素,如果是, 则返回执行将所 述视图控制参数所对应的视图窗口上的一个未分析的像素确定为当前待分析 像素的步骤; 否则, 结束;  Determining whether there is an unanalyzed pixel in the view window, and if yes, returning to perform the step of determining an unanalyzed pixel on the view window corresponding to the view control parameter as the current pixel to be analyzed; otherwise, ending ;
其中, 所述初始值赋极小值, 并且像素深度值越大离视点越近。  Wherein, the initial value is a minimum value, and the pixel depth value is closer to the viewpoint.
7、 根据权利要求 2所述的方法, 其特征在于, 所述视图窗口利用数据结 构依据所述视图控制参数进行表示, 具体的表示方式为:  The method according to claim 2, wherein the view window is represented by the data structure according to the view control parameter, and the specific representation manner is:
依据所述视图控制参数, 用栅格数据结构来表示所述视图窗口的像素, 所 述像素为所述视图窗口平面划分成的均匀网格单元,所述像素为所述栅格数据 中的基本信息存储单元,所述像素的坐标位置依据所述像素在所述视图窗口中 对应的行号和列号确定。  Determining, according to the view control parameter, a pixel of the view window by using a raster data structure, where the pixel is a uniform grid unit divided by the view window plane, and the pixel is a basic in the raster data. The information storage unit determines a coordinate position of the pixel according to a corresponding row number and column number of the pixel in the view window.
8、 一种三维模型数据分布式绘图装置, 其特征在于, 包括:  8. A three-dimensional model data distributed drawing device, comprising:
请求发送模块, 用于向多个请求接收端发送绘制数据请求, 所述绘制数据 请求中携带视图控制参数;  a request sending module, configured to send a drawing data request to multiple request receiving ends, where the drawing data request carries a view control parameter;
数据接收模块, 用于接收所述请求接收端反馈的、与所述绘制数据请求对 应的绘制后数据,所述绘制后数据包含请求接收端根据视图控制参数绘制三维 模型数据所对应的图像以及所述图像上各像素对应的合成标识量;  a data receiving module, configured to receive the post-rendered data corresponding to the drawing data request fed back by the request receiving end, where the drawn data includes an image corresponding to the request receiving end to draw the three-dimensional model data according to the view control parameter a composite identification amount corresponding to each pixel on the image;
合并处理模块, 用于根据所述绘制后数据中各像素的合成标识量,对所接 收到的绘制后数据进行合成。  The merging processing module is configured to synthesize the received post-rendered data according to the combined identification quantity of each pixel in the drawn data.
9、 根据权利要求 8所述的装置, 其特征在于, 所述合并处理模块包括: 第一判断单元, 用于当接收到请求接收端反馈的绘制后数据后, 判断是否 存在在先绘制后数据, 如果是, 则触发合并处理单元; 否则, 触发在先数据确 定单元;  The device according to claim 8, wherein the merging processing module comprises: a first determining unit, configured to: after receiving the post-rendered data fed back by the requesting end, determining whether there is data after the first drawing If yes, trigger the merge processing unit; otherwise, trigger the previous data determining unit;
合并处理单元, 用于将当前所接收到的绘制后数据作为当前绘制后数据, 并且根据所述当前绘制后数据中每个像素的合成标识量和在先绘制后数据中 所对应的像素的合成标识量,对所述当前绘制后数据和所述在先绘制后数据进 行合成处理, 并将合成后的数据作为新的在先绘制后数据;  a merging processing unit, configured to use the currently received post-rendered data as the current post-rendered data, and according to the synthesized identities of each pixel in the currently drawn data and the compositing of pixels corresponding to the previously drawn data An identifier quantity, synthesizing the current drawn data and the previously drawn data, and using the synthesized data as a new prior-drawn data;
在先数据确定单元,用于将当前所接收到的绘制后数据作为在先绘制后数 据。  The prior data determining unit is configured to use the currently received post-rendered data as the pre-rendered data.
10、 一种三维模型数据分布式绘图方法, 其特征在于, 包括: 接收请求发送端发送的绘制数据请求,所述绘制数据请求携带视图控制参 数, 所述视图控制参数包括: 视图窗口的外包矩形、 视点参数和投影参数; 根据所述视图控制参数绘制三维模型数据,并生成与所述视图控制参数对 应的视图窗口的外包矩形大小相同的图像; 10. A three-dimensional model data distributed drawing method, comprising: Receiving a request for sending a data sent by the sending end, where the drawing data request carries a view control parameter, where the view control parameter includes: an outsourcing rectangle of the view window, a viewpoint parameter, and a projection parameter; and drawing the three-dimensional model data according to the view control parameter, And generating an image of the same size of the outer envelope of the view window corresponding to the view control parameter;
获取所述图像上各像素深度,并将所述像素深度用来构成对应像素的合成 标识量,所述像素深度用于判断各像素所对应的三维模型数据距离所述视图控 制参数所确定的视点的距离的远近;  Obtaining a depth of each pixel on the image, and using the pixel depth to form a composite identifier of the corresponding pixel, where the pixel depth is used to determine that the three-dimensional model data corresponding to each pixel is determined by the view control parameter The distance of the distance;
将所述绘制后的图像和各像素对应的合成标识量作为绘制后数据发送给 所述请求发送端。  And sending the drawn image and the combined identification amount corresponding to each pixel to the request transmitting end as the drawn data.
11、 一种三维模型数据分布式绘图装置, 其特征在于, 包括:  11. A three-dimensional model data distributed drawing device, comprising:
请求接收模块, 用于接收请求发送端发送的绘制数据请求, 所述绘制数据 请求携带视图控制参数, 所述视图控制参数包括: 视图窗口的外包矩形、 视点 参数和投影参数;  a request receiving module, configured to receive a drawing data request sent by the requesting sending end, where the drawing data request carries a view control parameter, where the view control parameter includes: an outsourcing rectangle of the view window, a viewpoint parameter, and a projection parameter;
图像生成模块, 用于根据所述视图控制参数绘制三维模型数据, 并生成与 所述视图控制参数对应的视图窗口的外包矩形大小相同的图像;  An image generating module, configured to draw three-dimensional model data according to the view control parameter, and generate an image of the same size of the outer-out rectangle of the view window corresponding to the view control parameter;
标识量生成模块, 用于获取所述图像上各像素深度, 并将所述像素深度用 来构成对应像素的合成标识量,所述像素深度用于判断各像素所对应的三维模 型数据距离所述视图控制参数所确定的视点的距离的远近;  An identifier quantity generating module, configured to acquire a depth of each pixel on the image, and use the pixel depth to form a combined identifier quantity of the corresponding pixel, where the pixel depth is used to determine a distance of the three-dimensional model data corresponding to each pixel The distance of the viewpoint determined by the view control parameter;
数据发送模块,用于将所述绘制后的图像和各像素对应的合成标识量作为 绘制后数据发送给所述请求发送端。  And a data sending module, configured to send the drawn image and the combined identification amount corresponding to each pixel to the request sending end as the drawn data.
PCT/CN2011/079726 2010-09-20 2011-09-16 Distributed plotting method for 3d model data and a device therefor WO2012037862A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201010287543.8 2010-09-20
CN201010287543 2010-09-20
CN2010105971117A CN102044089A (en) 2010-09-20 2010-12-06 Method for carrying out self-adaption simplification, gradual transmission and rapid charting on three-dimensional model
CN201010597111.7 2010-12-06

Publications (1)

Publication Number Publication Date
WO2012037862A1 true WO2012037862A1 (en) 2012-03-29

Family

ID=43910201

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/CN2011/079726 WO2012037862A1 (en) 2010-09-20 2011-09-16 Distributed plotting method for 3d model data and a device therefor
PCT/CN2011/079727 WO2012037863A1 (en) 2010-09-20 2011-09-16 Method for simplifying and progressively transmitting 3d model data and device therefor

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/079727 WO2012037863A1 (en) 2010-09-20 2011-09-16 Method for simplifying and progressively transmitting 3d model data and device therefor

Country Status (2)

Country Link
CN (3) CN102044089A (en)
WO (2) WO2012037862A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116958332A (en) * 2023-09-20 2023-10-27 南京竹影数字科技有限公司 Method and system for mapping 3D model in real time of paper drawing based on image recognition

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102044089A (en) * 2010-09-20 2011-05-04 董福田 Method for carrying out self-adaption simplification, gradual transmission and rapid charting on three-dimensional model
CN102184572B (en) * 2011-05-19 2017-07-21 威盛电子股份有限公司 3-D graphic method of cutting out, rendering method and its graphic processing facility
CN102364439B (en) * 2011-10-19 2014-03-26 广东威创视讯科技股份有限公司 Window rapid movement method and device of distributed processing system
CN106485654B (en) * 2011-11-08 2021-10-26 苏州超擎图形软件科技发展有限公司 Vector data processing method and device
WO2013155974A1 (en) * 2012-04-18 2013-10-24 Dong futian Relevant method and device for compression, decompression and progressive transmission of spatial data
CN103035164B (en) * 2012-12-24 2015-03-25 广东威创视讯科技股份有限公司 Rendering method and system of geographic information system
CN103337090B (en) * 2013-06-17 2016-07-13 清华大学 Moon model remote interaction browses method for visualizing, client and system
CN103455970A (en) * 2013-08-30 2013-12-18 天津市测绘院 Method for accelerated display of invisible part by three-dimensional digital urban system model
EP2881918B1 (en) * 2013-12-06 2018-02-07 My Virtual Reality Software AS Method for visualizing three-dimensional data
CN103678587B (en) * 2013-12-12 2017-10-13 中国神华能源股份有限公司 Progressive transmission of spatial data and device
JP6087301B2 (en) * 2014-02-13 2017-03-01 株式会社ジオ技術研究所 3D map display system
CN103927396B (en) * 2014-05-05 2018-02-02 曾志明 The lookup method of three-dimensional spatial information is obtained in three-dimensional rendering using assistance data
CN107004304B (en) * 2014-09-30 2021-02-02 Cae有限公司 Rendering damaged-enhanced images in computer simulation
CN104658041A (en) * 2015-02-12 2015-05-27 中国人民解放军装甲兵工程学院 Dynamic scheduling method for entity models in distributed three-dimensional virtual environment
CN106600700B (en) * 2015-10-20 2020-01-17 星际空间(天津)科技发展有限公司 Three-dimensional model data processing system
CN106600679B (en) * 2015-10-20 2019-11-08 星际空间(天津)科技发展有限公司 A kind of method that three-dimensional modeling data simplifies
CN105303607B (en) * 2015-10-28 2018-09-18 沈阳黎明航空发动机(集团)有限责任公司 A kind of three-dimensional model simplifying method keeping precision
CN105513118B (en) * 2015-11-26 2018-07-10 北京像素软件科技股份有限公司 A kind of rendering intent of voxelization gaming world
CN105817031A (en) * 2016-03-16 2016-08-03 小天才科技有限公司 Game map object drawing method and device
CN105894551B (en) * 2016-03-31 2020-02-14 百度在线网络技术(北京)有限公司 Image drawing method and device
US10841557B2 (en) * 2016-05-12 2020-11-17 Samsung Electronics Co., Ltd. Content navigation
CN107545222A (en) * 2016-06-29 2018-01-05 中国园林博物馆北京筹备办公室 The method and its system of display target image in virtual reality scenario
CN107656809A (en) * 2016-07-25 2018-02-02 武汉票据交易中心有限公司 The flow implementation method and related system of a kind of bill business
CN106557620A (en) * 2016-11-08 2017-04-05 广东柳道热流道系统有限公司 The auxiliary of hot flow path standard product goes out drawing method
CN106776020B (en) * 2016-12-07 2020-02-21 长春理工大学 Computer cluster distributed path tracking drawing method for large three-dimensional scene
CN107422952B (en) * 2017-05-04 2019-04-09 广州视源电子科技股份有限公司 A kind of method, device and equipment that solid figure is shown
CN107967716B (en) * 2017-11-01 2021-08-06 深圳依偎控股有限公司 Thumbnail display control method and system based on three-dimensional picture
CN108055351B (en) * 2017-12-29 2021-04-16 深圳市毕美科技有限公司 Three-dimensional file processing method and device
CN108090305A (en) * 2018-01-10 2018-05-29 安徽极光照明工程有限公司 A kind of stage light control system based on ray tracing technology
CN108267154B (en) * 2018-02-09 2020-08-14 城市生活(北京)资讯有限公司 Map display method and device
CN108776995A (en) * 2018-06-06 2018-11-09 广东您好科技有限公司 Virtual robot custom-built system based on pixel synthetic technology
CN109522381B (en) * 2018-11-02 2021-05-04 长江空间信息技术工程有限公司(武汉) Building hidden facility safety detection method based on 3DGIS + BIM
EP4277277A3 (en) 2018-12-30 2024-01-03 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatus of video coding for triangle prediction
CN109925715B (en) * 2019-01-29 2021-11-16 腾讯科技(深圳)有限公司 Virtual water area generation method and device and terminal
CN110084870B (en) * 2019-05-13 2023-03-24 武汉轻工大学 Method, device and equipment for determining drawing area of plane equation and storage medium
CN110368694B (en) * 2019-08-22 2023-05-16 网易(杭州)网络有限公司 Game scene data processing method, device, equipment and readable storage medium
CN110647515A (en) * 2019-08-29 2020-01-03 北京浪潮数据技术有限公司 Distributed drawing method and device
CN110889901B (en) * 2019-11-19 2023-08-08 北京航空航天大学青岛研究院 Large-scene sparse point cloud BA optimization method based on distributed system
CN112396682B (en) * 2020-11-17 2021-06-22 重庆市地理信息和遥感应用中心 Visual progressive model browsing method in three-dimensional scene
CN113256784B (en) * 2021-07-02 2021-09-28 武大吉奥信息技术有限公司 Method for performing super-efficient drawing of GIS space three-dimensional voxel data based on GPU
CN115657855A (en) * 2022-11-10 2023-01-31 北京有竹居网络技术有限公司 Man-machine interaction method, device, equipment and storage medium
CN115994410B (en) * 2023-03-22 2023-05-30 中国人民解放军国防科技大学 Aircraft simulation driving design method based on octree refinement tetrahedral mesh
CN116883469B (en) * 2023-07-20 2024-01-19 中国矿业大学 Point cloud registration method based on EIV model description under plane feature constraint

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151621A (en) * 1997-04-10 2000-11-21 International Business Machines Corp. Personal conferencing system
CN1441363A (en) * 2002-02-27 2003-09-10 惠普公司 Distributive resource structure and system
CN1802668A (en) * 2002-09-06 2006-07-12 索尼计算机娱乐公司 Image processing method and apparatus
CN101334891A (en) * 2008-08-04 2008-12-31 北京理工大学 Multichannel distributed plotting system and method
CN102044089A (en) * 2010-09-20 2011-05-04 董福田 Method for carrying out self-adaption simplification, gradual transmission and rapid charting on three-dimensional model

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438576B1 (en) * 1999-03-29 2002-08-20 International Business Machines Corporation Method and apparatus of a collaborative proxy system for distributed deployment of object rendering
CN100428218C (en) * 2002-11-13 2008-10-22 北京航空航天大学 Universal virtual environment roaming engine computer system
KR100810294B1 (en) * 2006-09-12 2008-03-06 삼성전자주식회사 Method for simplification feature-preserving of 3d mesh data
WO2009058845A1 (en) * 2007-10-30 2009-05-07 Advanced Micro Devices Real-time mesh simplification using the graphics-processing unit
US7983487B2 (en) * 2007-11-07 2011-07-19 Mitsubishi Electric Research Laboratories, Inc. Method and system for locating and picking objects using active illumination
CN101226640B (en) * 2007-12-21 2010-08-18 西北工业大学 Method for capturing movement based on multiple binocular stereovision
CN101587583A (en) * 2009-06-23 2009-11-25 长春理工大学 The farm of playing up based on the GPU cluster

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151621A (en) * 1997-04-10 2000-11-21 International Business Machines Corp. Personal conferencing system
CN1441363A (en) * 2002-02-27 2003-09-10 惠普公司 Distributive resource structure and system
CN1802668A (en) * 2002-09-06 2006-07-12 索尼计算机娱乐公司 Image processing method and apparatus
CN101334891A (en) * 2008-08-04 2008-12-31 北京理工大学 Multichannel distributed plotting system and method
CN102044089A (en) * 2010-09-20 2011-05-04 董福田 Method for carrying out self-adaption simplification, gradual transmission and rapid charting on three-dimensional model

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116958332A (en) * 2023-09-20 2023-10-27 南京竹影数字科技有限公司 Method and system for mapping 3D model in real time of paper drawing based on image recognition
CN116958332B (en) * 2023-09-20 2023-12-22 南京竹影数字科技有限公司 Method and system for mapping 3D model in real time of paper drawing based on image recognition

Also Published As

Publication number Publication date
CN102306395A (en) 2012-01-04
CN102332179B (en) 2015-03-25
CN102332179A (en) 2012-01-25
WO2012037863A1 (en) 2012-03-29
CN102306395B (en) 2014-03-26
CN102044089A (en) 2011-05-04

Similar Documents

Publication Publication Date Title
WO2012037862A1 (en) Distributed plotting method for 3d model data and a device therefor
JP6260924B2 (en) Image rendering of laser scan data
EP1703470B1 (en) Depth image-based modeling method and apparatus
CN103810744B (en) It is backfilled a little in cloud
JPH0757117A (en) Forming method of index to texture map and computer control display system
CN102834849A (en) Image drawing device for drawing stereoscopic image, image drawing method, and image drawing program
KR100967296B1 (en) Graphics interface and method for rasterizing graphics data for a stereoscopic display
CN101236662A (en) Apparatus and method for generating CG image for 3-D display
WO2011082650A1 (en) Method and device for processing spatial data
GB2406252A (en) Generation of texture maps for use in 3D computer graphics
KR20130012504A (en) Apparatus and method for rendering
JP2003091745A (en) Method for representing rendering information of image base in three-dimensional scene
US9401044B1 (en) Method for conformal visualization
Tredinnick et al. Experiencing interior environments: New approaches for the immersive display of large-scale point cloud data
JP5846373B2 (en) Image processing apparatus, image processing method, image processing program, and image processing system
JP2017215706A (en) Video synthesis method, video acquisition device, video synthesis system, and computer program
JP2012003520A (en) Three-dimensional printed matter production support device, plug-in program, three-dimensional printed matter production method, and three-dimensional printed matter
JP2023527438A (en) Geometry Recognition Augmented Reality Effect Using Real-time Depth Map
JP4114385B2 (en) Virtual three-dimensional space image management system and method, and computer program
JPH1027268A (en) Image processing method and image processor
JP2022162653A (en) Drawing device and program
JP2003323636A (en) Three-dimensional supplying device and method and image synthesizing device and method and user interface device
JP2952585B1 (en) Image generation method
JP3067097B2 (en) 3D image data creation method
JP2007299080A (en) Image generation method and image generation device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11826389

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11826389

Country of ref document: EP

Kind code of ref document: A1