Implementation of vrml, stl file parser with passive stereo vision


In the execution that is present, the application program is not unable to look at STL and VRML files. The 3D moments are represented by studying .wrl and .stl documents, with the addition of attributes: using numerous lamps, stuff colours, choices for sound, line framework, factors and traces screening, consistency maps, shift, different digicam opinions etc. A show is a perfect element of the enactment that is the reason digital truth. The stereo that is inactive is cost 3D creation approach that is low. It empowers an individual to go into an environment of Digital Reality. This document will emphasize the technical information on St L, VRML documents, the approach to parsing such documents, representing the version of version that is revered.

1. Opening

Modeling programs as IDEAS, PROE are an integral bundle of engineering. These programs were developed to ease a concurrent approach to engineering design, 3D evaluation, modeling and production programs. The 3D simulation created utilizing all these programs features enormous particulars thus resulting in much quality including explanation for attribute details, background/structure particulars, bodily home information, restraint information, topological information, meta data etc. The document containing these information that aren't needed for visual image, controlling files that are such only for imaging in stereo function leads to functions that are gradual. Thus the creation applications was created. Visual image is something equally for creating pictures from sophisticated data sets and for interpreting information.

All the CAD techniques are able to export developed designs VRML documents. All these are the record format used to describe contour of the 3 thing. Picture outline explained in STL is read by the software. Screen element leaves the 3 picture with the addition of attributes using numerous lamps, stuff colours, choices for traces screening, consistency maps, shift, different digicam opinions etc. and sound, line framework, factors The main goal of the execution would be to supply a completely operational stereo vision method that enables them to research datasets with sources that are less costly all through advancement.

The block diagram that is following describes this function was performed in by the procedure. The .stl or .wrl record, which includes explanation regarding the item, is provided as an input signal to this system. Parser signal save these particulars in information buildings. Info within information construction shown around the display as item using OpenGL instructions.

St l or .wrl record picture outline screen of design

2. Background

Interpretation and the parsing described in this document. An 3 experience is implied by digital truth. The world of CAD may be prolonged to digital reality by easing three dimensional creation for assessment that was digital. [1] This Is a technology that enables person socialize in an universe which is created by pc and to enter. This engineering is defined by two fundamental characteristics: [8]

  • It provides 3D real time rendering of an actual or subjective area. This space is known as areas or man-made or digital surroundings.
  • In VR program that was more complex, the digital universe created from the pc responds to the activities of an individual.

Digital truth is offered as an instrument to assist production engineers and developers before constructing the actual component to recognize the issue. [3] Initially an item prepared into STL and was created on a program. This shown and is immediately interpreted in digital surroundings. The capacity to imagine this model, finally controlling it and analyzing it from various perspective, provides advantage that is important to the developer. This method will decrease the period before assembling them needed for confirmation of the design. [5]

3. Stereo Lithography (St L) Files

The .stl or Stereo Lithography format is an ASCII or binary document created in modeling. [14] This Is an inventory of triangular areas that explain sound model was generated by a computer. That is the normal input for fast prototyping. Initially 3D simulation are made using modeling applications. All the modeling applications enables export of files. You will find only two storage types accessible for St L are Binary and ASCII. If needed file is a understandable and may be altered. Binary variations of St L are far more streamlined. STL document includes a description of the area of the item when it comes to triangles. [1] every person pie outline identifies one vector directed from the area of the strong. These ideals so are floating point values and are completely in Cartesian co Ordinates. The vector that is standard is a vector of length one centered at the source. In case the standard isn't incorporated then the browser should create the righthand rule being used by it. As seen from beyond the area, the vertices of the triangles are recorded in counter clockwise. [10] utilizes facet- rendering that is centered, indicates it contains listing of information that is aspect. The factors determine the area of A3-Dimenssional item. Each aspect determined sides of a device as well as the triangle typical. Three coordinates employed to define the vertex that is every and standard. S O each facet includes total of 12 figures. The solitary item is represented by each document. It does not include any colour info. Vertex is followed by sTL document -to- principle, indicates two vertices are shared by each pie with all of its triangles that are next.

3.1 .stl Document Format

The document finishes with report that is endsolid and starts with a strong document. [2] Within these key words are lists of personal triangles that comprise the faces of the strong design. Each pie encased within endfacet and facet records. The standard vector component of the aspect, defined by key word that was standard. Outside loop delimits the vertices of triangle. Each vertex defined vertex, by the key word.

Listed here is part of an ASCII STL file, bottle.stl


facet regular 0.955654E-01 -0.966960E+00 0.236339E+00

outside cycle

vertex 0.000000E+00 0.800000E+01 0.000000E+00

vertex -0.675880E+01 0.442610E+01 -0.118893E+02

vertex -0.335710E+01 0.442610E+01 -0.132648E+02



facet regular -0.350878E+00 0.349503E+00 -0.868753E+00

outside cycle

vertex -0.675880E+01 0.442610E+01 -0.118893E+02

vertex -0.634850E+01 0.666400E+01 -0.111547E+02

vertex -0.315330E+01 0.666400E+01 -0.124452E+02




Finish sound

3.2 St L Parser

This Parser is a MFC test, which parses the inputted St L record i.e., says triangulated info about CAD design for representing the item to the display. Following are the measures completed for parsing,

  • Parser starts with assessing the expansion of the document that is inputted. In case it is .stl then reading proceeds, otherwise it stops.
  • Whole contents of document are saved for parsing in a stream.
  • Solitary item is represented by each document . It is not unnecessary to get amount of triangles. Each pie begins with aspect that is key word. An operate is described to compute quantity of factors that were said.
  • Two dimensional arrays that are dynamic are accustomed to save coordinates advice. Four arrays are described - one for keeping vertices particulars of the aspects for saving the all factors typical vector particulars, additional three.

norm=new double[nb][4] // all facets typical vector's x, y, z coordinates are saved

v1=new double[nb][4] // all triangles first vertex's x, y, z coordinates are saved

For saving second and 3 vertex of the triangles sam e proclamation proceeds. Here ‘nb' signifies

Variety of factors.

A perform ‘OffsetToString' was understood to be a suggestion to find the needed location in stream.

OffsetToString("aspect standard") In stream it points to “facet regular”

Each term saved in the info framework in subsequent style and obtained in the stream.

Typical vector's x, y, z coordinates saved and read in the stream. Here the variety

Norm' shops standard vector of the triangles.

ReadWord() and duplicate to average[i][0]

ReadWord() and duplicate to standard[i][1]

ReadWord() and duplicate to standard[i][2]

Y, z coordinates of the vertices saved in v 1, v 2 and v 3 and are read in the stream. The variety v 1 includes the vertex of the triangles. V 2 includes v 3 includes next vertex of the triangles and the next vertex of the triangles.

4. Virtual Reality Modeling Language (VRML) Files

VRML is an actual modeling vocabulary identifies components and more affluent mathematical primitives. It's a vocabulary for describing player interactive simulations that are multi. Every aspect of digital globe show, discussion and internetworking may be given using VRML. VRML is just a 3D inter change structure. It identifies almost all of the popular semantics within the uses including ordered conversions, light, points of view, geometry materials attributes etc. of to day This is a short summary that explains the important characteristics of VRML, [1 1]

  • Picture Data Construction - VRML documents explain 3 objects by means of a graph that is hierarchical. Things in the graph are called nodes that represent group attributes, attributes that were appear and primitives.
  • Occasion Design- VRML identifies message-passing system or a conference where nodes in the landscape data and each other may communicate.
  • Detectors - All These will be primitives and the fundamental interaction of VRML.
  • Programs - Programs let arbitrary behaviours, described in any to be defined by the planet inventor. Straightforward cartoon computations are performed by nodes.
  • Prototyping - system enables re use and encapsulation of picture data.

VRML is a picture description language. It's perhaps not an overall-goal development language. It's a consistent extendable developed to save the condition of a planet that is digital also to be read !

4.1 .wrl document format

The vocabulary standards of VRML is includes, [15]

  • Co Ordinate program - VRML utilizes a Cartesian 3 dimensional co Ordinate program.
  • Areas - Area kind specifies the structure for the ideals it produces.
  • Nodes - VRML specifies the product in-relation to house, contour and group nodes. Contour nodes identify the geometry in the picture. Home nodes change the way in which contours are driven. Additional nodes are gathered by group nodes !
  • Instancing - A node can be kid of greater than one team. The use of a node several occasions of same example !
  • Extensibility - The self describing help extensions to VRML.

An example ASCII file of the CAD version in .wrl structure is:

#VRML V2.0 utf8

#dodec.wrl #

Point Of View explanation "First see" place 0.0 0.0 9.0

NavigationInfo kind "ANALYZE"


Interpretation -1.5 0.0 0.0

kids Form

Look D E F A Look materials Substance

geometry D E F IFS IndexedFaceSet

coord Organize

Stage [

1.0 1.0 1.0,

1.0 1.0 -1.0]

coordIndex [

1, 8, 0, 12, 13, -1,

4, 9, 5, 15, 14, -1,

2, 10, 3, 13, 12, -1]

colour Shade

color [

0.0 0.0 1.0,

0.0 1.0 0.0]

colorPerVertex FALSE

colorIndex [ 0, 1, 1, 0, 2, 3, 3, 2, 4, 5, 5, 4 ]

4.2 VRML document Parser

This can be a MFC program, which parses the inputted VRML document i.e., says information on the design for representing the item to the display. [6] Following will be the measures completed for parsing,

  • Parser starts with assessing the expansion of the document that is inputted. In case it is .wrl then reading proceeds, otherwise it stops.
  • Whole contents of document are saved for parsing in a stream.
  • Several or solitary items are represented by vRML document. Contours of the 3 items are explained when it comes to information that was triangulated. Polygons are defined substance, with area colour, mild, feel, etc. that were shininess It is not unnecessary to locate document is presented in by variety of items. Subsequently the geometry of each item saved and is examined in a structure. This is realized by executing subsequent features,

- CountObject() - Matters variety of items displayed in a VRML document

- CountFace() - Matters amount of polygons in a thing

- StoreMesh() - Shops information on the design in the info construction

The constructions that have been found in this parser,

- Dual (*vertex)[4] - to set all vertices xy z coordinates

- int (*face)[6] - to put all polygons coord-spiders

- Move (*colour)[3] - to set all factors R GB colour factors

- int *colorIndex - to set colour spiders of polygons

- Dual (*ordinary)[4] - to put each polygon's typical vector's xy z coordinates

- Twice (*vct1)[4],(*vct2)[4], (*vx),(*vy),(*vz),(*p)- useful for computing standard

- Dual (*drawv)[4] - each polygons factors were parsed from vertex variety and put into

this arrangement in accordance with the sequence of encounter spiders in encounter


A perform ‘OffsetToString' means a suggestion to find the needed location in stream.

OffsetToString("pointl")-in buffer it points to “point”

Parser scans the contents of stream and retailers these values into similar constructions previously listed

The various purposes numbered to do parsing are,

- ReadVRMLFile() - it scans the contents of stream then calls additional perform that are

Needed for parsing

- ScanDiffuse() - tests substance attributes

- CountAndStoreCoordinates() - matters the overall amount of vertices and every vertex is kept

in selection of co Ordinates

- ReadCoordIndexAndStoreCoord() - says the coord list and shops the co Ordinates to the

Matching coord list

- ReadLineIndexAndStoreCoord() - says the line list and shops the co Ordinates to the

Accompanying point catalog

- ReadColorCoordAndStore() - read colour co Ordinates and shops it to related

Co Ordinate list

- CalcNormal() - computes standard values for every polygon

Subsequent to the end of parsing, the show list is designed to maintain most of the information on the screen. Growth is achieved by this in pace of delivery of the application program. Listings that are exhibit are going to be developed just once but is likely to be called when and as needed, which decrease time !

5. Renderer

Making, the procedure where pc shows the version to the display. The areas 3.2 and 4.2 described the procedure for parsing. Parsing leads to to storage of item particulars in information construction for the job that is next, which is show of the product to the monitor. Program that was openGL can be used to construct the product that was desirable. OpenGL is a software interface to graphics hardware. [1 2] It contains different instructions to designate the item. Following are the measures completed for making,

Considering that the Stl document includes just factors info; default colour, materials and mild qualities were place by OpenGL commands:

glClearColor(), glLightfv()

But VRML document supplies look particulars like colour, substance, and lights as well as geometry. In the info construction these beliefs were saved throughout parsing. OpenGL instructions utilized these beliefs to create materials, the colour and lights for the screen of version.

Original configurations were done-for seeing the geometry of the design to the display by identifying the viewport, area view position from the commands:

glViewPort(), gluPerspective()

STL and VRML document's triangulated info within info construction were inputted to OpenGL instructions in subsequent way,







It attracts one polygon. Retaining this signal in iteration replicated for all of the polygons same task, which shows design to the display.

There is a choice for showing the item in line frame function. Traces type the line framework connect the vertices of the polygons. It certainly reveals number of polygons. This is achieved by


Placing of screen before pulling the item.

In case the function is ‘ GL POINT' it shows just the vertices of the triangles.

For executing change features like running, turn and interpretation mouse relationships were described. The instructions functions conversions are:

glRotatef(), glScalef(), glTranslatef()

Different mixtures of sunshine and substance could be used to analyze the look of version to the display.

Distinct digicam sights shows the product's front, rear, remaining, correct, best, base and isometric see

6. Vision

Stereoscopic show is a simple element of truth that is digital. It's a powerful method to improve penetration in 3 creation that is medical. [2] A common pattern in stereoscopic techniques is willful wrong modeling of consumer attention separation. Separation is an essential variable for the human visual system to blend stereo picture sets into 3D pictures that are solitary. Picture level is determined by the approximation of attention separation. This app presents what sort of lowend, screening method that is low-cost may be utilized as a strategy to create exactly the same result as top quality stereo screening. This inexpensive stereo method is named as stereo that was passive. [4]

The true secret is determining the method that is perfect to provide only the right and left eyes with the right and left pictures . [7] In stereo method that is inactive to see the 3 picture Crimson- . Right and left pictures are joined in to one picture comprising doldrums for the left piece crimsons for the correct vision piece of the landscape, of the landscape, and both pictures were taken by by colors of green for parts of the landscape. The audience wears a pair of spectacles with red on blue and the left eye in the attention that is right. [1 3] the point function meant for another vision is caused by Each eyepiece combine in causes point function and the history meant for an unique vision to not seem white.

In this use 3D stereo eyesight is executed by following the below specified series, [9]

  1. Establish the geometry for the opinion from remaining eye
  2. Place the remaining vision making stream
  3. Make the remaining eye picture
  4. Establish the geometry for the opinion from correct eye
  5. Establish the correct vision making stream
  6. Make the best vision picture
  7. Exchange buffers

7. Photos

For screening the ability of the applications, bottle.stl, spere.stl, dodec.wrl documents received as input signal for the applications. Fig 2 to Fig 7 provides the pictures. Fig. 7 displays inactive stereo picture. This picture may be seen with reddish-blue vision ware, gives result to 3.

8. Overview and Decision

This document offered the rendering of VRML and STL documents in to the proper structure for digital truth/ creation option that was stereo. The 3D creation program supplies simulator allow a more reasonable feeling to be obtained by developers. In sectors that are production the creation options are important resources for quick prototyping. Prototyping is the way for the formation of elements produced from 3 D information. Technologist is enabled by it to trouble shoot the issues within current layouts also to dramatically decrease the hazard related to building the layouts that are newest. It enables the sector that is making so that you can create fresh to re engineer their product improvement methods - products and services to market quicker, in a price that is lower.