Coin Logo http://www.sim.no
http://www.coin3d.org

SbCylinder.h
1 #ifndef COIN_SBCYLINDER_H
2 #define COIN_SBCYLINDER_H
3 
4 /**************************************************************************\
5  *
6  * This file is part of the Coin 3D visualization library.
7  * Copyright (C) 1998-2007 by Systems in Motion. All rights reserved.
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License
11  * ("GPL") version 2 as published by the Free Software Foundation.
12  * See the file LICENSE.GPL at the root directory of this source
13  * distribution for additional information about the GNU GPL.
14  *
15  * For using Coin with software that can not be combined with the GNU
16  * GPL, and for taking advantage of the additional benefits of our
17  * support services, please contact Systems in Motion about acquiring
18  * a Coin Professional Edition License.
19  *
20  * See http://www.coin3d.org/ for more information.
21  *
22  * Systems in Motion, Postboks 1283, Pirsenteret, 7462 Trondheim, NORWAY.
23  * http://www.sim.no/ sales@sim.no coin-support@coin3d.org
24  *
25 \**************************************************************************/
26 
27 #include <stdio.h>
28 
29 #include <Inventor/SbBasic.h>
30 #include <Inventor/SbLine.h>
31 
32 class COIN_DLL_API SbCylinder {
33 public:
34  SbCylinder(void);
35  SbCylinder(const SbLine& a, const float r);
36  void setValue(const SbLine& a, const float r);
37  void setAxis(const SbLine& a);
38  void setRadius(const float r);
39  const SbLine& getAxis(void) const;
40  float getRadius(void) const;
41  SbBool intersect(const SbLine& l, SbVec3f& intersection) const;
42  SbBool intersect(const SbLine& l, SbVec3f& enter, SbVec3f& exit) const;
43 
44  void print(FILE * file) const;
45 
46 private:
47  SbLine axis;
48  float radius;
49 };
50 
51 #endif // !COIN_SBCYLINDER_H
SbLine::getClosestPoint
SbVec3f getClosestPoint(const SbVec3f &point) const
Definition: SbLine.cpp:263
SbCylinder
The SbCylinder class is a representation of a cylinder.
Definition: SbCylinder.h:32
SoDebugError::postWarning
static void postWarning(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:324
SbCylinder::getAxis
const SbLine & getAxis(void) const
Definition: SbCylinder.cpp:113
SbVec3f::length
float length(void) const
Definition: SbVec3f.cpp:356
SbCylinder::setAxis
void setAxis(const SbLine &a)
Definition: SbCylinder.cpp:79
SbVec3f::cross
SbVec3f cross(const SbVec3f &v) const
Definition: SbVec3f.cpp:270
SbLine::print
void print(FILE *file) const
Definition: SbLine.cpp:325
SbCylinder::intersect
SbBool intersect(const SbLine &l, SbVec3f &intersection) const
Definition: SbCylinder.cpp:137
SbLine::getDirection
const SbVec3f & getDirection(void) const
Definition: SbLine.cpp:315
SbCylinder::SbCylinder
SbCylinder(void)
Definition: SbCylinder.cpp:46
SbCylinder::setRadius
void setRadius(const float r)
Definition: SbCylinder.cpp:96
SbVec3f
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:37
SbVec3f::dot
float dot(const SbVec3f &v) const
Definition: SbVec3f.cpp:282
SbLine::getPosition
const SbVec3f & getPosition(void) const
Definition: SbLine.cpp:305
SbCylinder::getRadius
float getRadius(void) const
Definition: SbCylinder.cpp:124
SbLine
The SbLine class represents a line in 3D space.
Definition: SbLine.h:32
SbVec3f::normalize
float normalize(void)
Definition: SbVec3f.cpp:436
SbCylinder::print
void print(FILE *file) const
Definition: SbCylinder.cpp:255
SbCylinder::setValue
void setValue(const SbLine &a, const float r)
Definition: SbCylinder.cpp:67

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Wed Jul 24 2019 for Coin by Doxygen. 1.8.17