Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkSTLReader Class Reference

`#include <vtkSTLReader.h>`

Inheritance diagram for vtkSTLReader:

[legend]
Collaboration diagram for vtkSTLReader:

[legend]
List of all members.

## Detailed Description

read ASCII or binary stereo lithography files

Date:
  2002/09/01 13:03:05

Revision:
  1.60

vtkSTLReader is a source object that reads ASCII or binary stereo lithography files (.stl files). The FileName must be specified to vtkSTLReader. The object automatically detects whether the file is ASCII or binary.

.stl files are quite inefficient since they duplicate vertex definitions. By setting the Merging boolean you can control whether the point data is merged after reading. Merging is performed by default, however, merging requires a large amount of temporary storage since a 3D hash table must be constructed.

Warning:
  Binary files written on one system may not be readable on other systems. vtkSTLWriter uses VAX or PC byte ordering and swaps bytes on other systems.

Created by:
  - Schroeder, Will

CVS contributions (if > 5%):
  - Schroeder, Will (51%)
  - Martin, Ken (10%)
  - Law, Charles (9%)
  - Geveci, Berk (8%)
  - Turner, Wes (7%)

CVS logs (CVSweb):
  - .`cxx` (`/IO/vtkSTLReader.cxx)`
  - .`h` (`/IO/vtkSTLReader.h)`

Examples:
  vtkSTLReader (Examples)

Tests:
  vtkSTLReader (Tests)

Definition at line 68 of file vtkSTLReader.h.

## Public Types

typedef vtkPolyDataSource | Superclass

## Public Methods

virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
unsigned long | GetMTime ()
void | CreateDefaultLocator ()
virtual void | SetFileName (const char *)
virtual char * | GetFileName ()
virtual void | SetMerging (int)
virtual int | GetMerging ()
virtual void | MergingOn ()
virtual void | MergingOff ()
virtual void | SetScalarTags (int)
virtual int | GetScalarTags ()
virtual void | ScalarTagsOn ()
virtual void | ScalarTagsOff ()
void | SetLocator (vtkPointLocator *locator)
virtual vtkPointLocator * | GetLocator ()

## Static Public Methods

int | IsTypeOf (const char *type)
vtkSTLReader * | SafeDownCast (vtkObject *o)
vtkSTLReader * | New ()

## Protected Methods

| vtkSTLReader ()
| ~vtkSTLReader ()
void | Execute ()
int | ReadBinarySTL (FILE *fp, vtkPoints *, vtkCellArray *)
int | ReadASCIISTL (FILE *fp, vtkPoints *, vtkCellArray *, vtkFloatArray *scalars=0)
int | GetSTLFileType (FILE *fp)

## Protected Attributes

char * | FileName
int | Merging
int | ScalarTags
vtkPointLocator * | Locator

## Member Typedef Documentation

typedef vtkPolyDataSource vtkSTLReader::Superclass

| Reimplemented from vtkPolyDataSource. Definition at line 71 of file vtkSTLReader.h.

## Constructor & Destructor Documentation

vtkSTLReader::vtkSTLReader | ( |  | ) | `[protected]`

vtkSTLReader::~vtkSTLReader | ( |  | ) | `[protected]`

## Member Function Documentation

virtual const char* vtkSTLReader::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkPolyDataSource.

int vtkSTLReader::IsTypeOf | ( | const char * | type | ) | `[static]`

| Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkPolyDataSource.

virtual int vtkSTLReader::IsA | ( | const char * | type | ) | `[virtual]`

| Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkPolyDataSource.

vtkSTLReader* vtkSTLReader::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkPolyDataSource.

void vtkSTLReader::PrintSelf | ( | ostream & | os,
|  | vtkIndent | indent
| ) | `[virtual]`

| Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes. Reimplemented from vtkPolyDataSource.

vtkSTLReader* vtkSTLReader::New | ( |  | ) | `[static]`

| Construct object with merging set to true. Reimplemented from vtkObject.

unsigned long vtkSTLReader::GetMTime | ( |  | ) | `[virtual]`

| Overload standard modified time function. If locator is modified, then this object is modified as well. Reimplemented from vtkObject.

virtual void vtkSTLReader::SetFileName | ( | const char * |  | ) | `[virtual]`

| Specify file name of stereo lithography file.

virtual char* vtkSTLReader::GetFileName | ( |  | ) | `[virtual]`

| Specify file name of stereo lithography file.

virtual void vtkSTLReader::SetMerging | ( | int |  | ) | `[virtual]`

| Turn on/off merging of points/triangles.

virtual int vtkSTLReader::GetMerging | ( |  | ) | `[virtual]`

| Turn on/off merging of points/triangles.

virtual void vtkSTLReader::MergingOn | ( |  | ) | `[virtual]`

| Turn on/off merging of points/triangles.

virtual void vtkSTLReader::MergingOff | ( |  | ) | `[virtual]`

| Turn on/off merging of points/triangles.

virtual void vtkSTLReader::SetScalarTags | ( | int |  | ) | `[virtual]`

| Turn on/off tagging of solids with scalars.

virtual int vtkSTLReader::GetScalarTags | ( |  | ) | `[virtual]`

| Turn on/off tagging of solids with scalars.

virtual void vtkSTLReader::ScalarTagsOn | ( |  | ) | `[virtual]`

| Turn on/off tagging of solids with scalars.

virtual void vtkSTLReader::ScalarTagsOff | ( |  | ) | `[virtual]`

| Turn on/off tagging of solids with scalars.

void vtkSTLReader::SetLocator | ( | vtkPointLocator * | locator | ) |

| Specify a spatial locator for merging points. By default an instance of vtkMergePoints is used.

virtual vtkPointLocator* vtkSTLReader::GetLocator | ( |  | ) | `[virtual]`

| Specify a spatial locator for merging points. By default an instance of vtkMergePoints is used.

void vtkSTLReader::CreateDefaultLocator | ( |  | ) |

| Create default locator. Used to create one when none is specified.

void vtkSTLReader::Execute | ( |  | ) | `[protected, virtual]`

| This method is the old style execute method Reimplemented from vtkSource.

int vtkSTLReader::ReadBinarySTL | ( | FILE * | fp,
|  | vtkPoints * | ,
|  | vtkCellArray * |
| ) | `[protected]`

int vtkSTLReader::ReadASCIISTL | ( | FILE * | fp,
|  | vtkPoints * | ,
|  | vtkCellArray * | ,
|  | vtkFloatArray * | scalars = 0
| ) | `[protected]`

int vtkSTLReader::GetSTLFileType | ( | FILE * | fp | ) | `[protected]`

## Member Data Documentation

char* vtkSTLReader::FileName`[protected]`

| Definition at line 115 of file vtkSTLReader.h.

int vtkSTLReader::Merging`[protected]`

| Definition at line 116 of file vtkSTLReader.h.

int vtkSTLReader::ScalarTags`[protected]`

| Definition at line 117 of file vtkSTLReader.h.

vtkPointLocator* vtkSTLReader::Locator`[protected]`

| Definition at line 118 of file vtkSTLReader.h.

The documentation for this class was generated from the following file:

- IO/vtkSTLReader.h