summaryrefslogtreecommitdiff
path: root/esolid/wrapper/include/gencyl.h
blob: 68d1410cdea1b469b07fb490fc8c35577e0423f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//  file:    gencyl.h
//  update:  01/22/03

#ifndef _GENCYL_H
#define _GENCYL_H

#include <cassert>
#include <cstdlib>
#include <iostream>

#include "bigrational_vector.h"
#include "ksolid.h"

using namespace std;

K_SOLID read_cyl(istream&, const bigrational& = 0);
K_SOLID read_BRLCAD_cyl(istream&, const bigrational& = 0);

int get_cyl_cap(const bigrational_vector& center,
                const bigrational_vector& vecA,
                const bigrational_vector& vecB,
                const bool is_ccw,
                K_PATCH*& cap);
K_SOLID gen_cyl(const bigrational_vector& base,
                const bigrational_vector& centerline,
                const bigrational_vector& base_vecA,
                const bigrational_vector& base_vecB,
                const bigrational_vector& top_vecA,
                const bigrational_vector& top_vecB);
int get_cyl_side(K_RATPOLY* const I,
                 K_RATPOLY* const X,
                 K_RATPOLY* const Y,
                 K_RATPOLY* const Z,
                 K_RATPOLY* const W,
                 K_PATCH*& side);

#endif