Trax3 3.1.0
trax track library
Loading...
Searching...
No Matches
SupportUSD.h
1// Copyright (c) 2013 - 2019 Marc-Michael Horstmann;
2// Copyright (c) 2020 - 2024 Trend Verlag;
3//
4// trax track library
5// AD 2024
6//
7// "Rome wasn't built in a day,
8// But in twenty years
9// You should have something."
10//
11// Johnossi
12
13
14#pragma once
15
16#include "dim/DimensionedValues.h"
17
18#if defined(_MSC_VER)
19# pragma warning( push )
20# pragma warning( disable: 4003 ) // not enough arguments for function-like macro invocation
21# pragma warning( disable: 4244 ) // 'initializing': conversion from '' to '', possible loss of data
22# pragma warning( disable: 4305 ) // 'argument': truncation from 'double' to 'float'
23#endif
24#include <pxr/usd/usdGeom/basisCurves.h>
25#include <pxr/usd/usdGeom/metrics.h>
26#include <pxr/usd/usd/prim.h>
27#include <pxr/usd/usd/stage.h>
28#include <pxr/usd/usdGeom/xformable.h>
29#if defined(_MSC_VER)
30# pragma warning( pop )
31#endif
32
33
34namespace trax{
35
36 struct Curve;
37 struct CurveSample;
38 struct CubicData;
39 struct Line;
40 struct LineP;
41 struct Arc;
42 struct ArcP;
43 struct Helix;
44 struct HelixP;
45 struct Cubic;
46 struct Spline;
47 struct Clothoid;
48 struct Rotator;
49 struct RotatorChain;
50 struct PolygonalChain;
51 struct SampledCurve;
52
53 struct RoadwayTwist;
54 struct ConstantTwist;
55 struct LinearTwist;
56 struct PiecewiseTwist;
57 struct DirectionalTwist;
59 struct CombinedTwist;
60
61 struct Section;
62
63 struct TrackBuilder;
64 struct Connector;
65 struct Switch;
66 struct ThreeWaySwitch;
67 struct SingleSlipSwitch;
68 struct DoubleSlipSwitch;
69 struct TrackSystem;
70 struct TrackCollection;
72
73}
Namespace of all the trax track libraries classes and methods.
Definition Collection.h:17
A plane arc.
Definition Curve.h:602
A plane arc with owned parameters.
Definition Curve.h:669
Curve with linear increasing curvature. Also called 'Euler Spiral'.
Definition Curve.h:1393
Combines the effect of two twists by adding them.
Definition RoadwayTwist.h:468
Collection to hold a set of Connector objects.
Definition ConnectorCollection.h:36
A Connector rearranges the connections between several track ends.
Definition Connector.h:226
A twist that stays constant over the whole track range.
Definition RoadwayTwist.h:265
Data definig a cubic curve.
Definition Curve.h:434
Cubic polynom curve.
Definition Curve.h:1067
Curves implement this interface that then can get attached to a track to define the tracks geometry.
Definition Curve.h:198
The dynamic data of a curve at one point.
Definition Curve.h:410
A twist that rotates the frame arount T in a way that B is nearest a certain direction.
Definition RoadwayTwist.h:372
A double slip switch is made from eight tracks that form a crossing with the possibility to divert th...
Definition Switch.h:527
A three dimensional spiral.
Definition Curve.h:812
A three dimensional spiral with owned parameters.
Definition Curve.h:903
A straight line.
Definition Curve.h:498
A straight line with owned parameters.
Definition Curve.h:511
A twist that varies linearly between two values.
Definition RoadwayTwist.h:290
A twist that works like a DirectionalTwist but interpolates (linearly) two neighbouring attractors ac...
Definition RoadwayTwist.h:419
A twist with values at control points and either none or linear interpolation for the points in betwe...
Definition RoadwayTwist.h:333
A series of samples of points and tangents that make up a curve.
Definition Curve.h:1744
A RoadwayTwist is used to define the actual rotating angle around the tangent at a curve to get the c...
Definition RoadwayTwist.h:81
A series of Rotator curves that continue each other.
Definition Curve.h:1631
Curve with evenly (with respect to arc length) rotating tangent vector.
Definition Curve.h:1568
A curve given by Fi,ki,ti,si samples of a real curveT.
Definition Curve.h:1856
A profile of a track.
Definition Section.h:45
A single slip switch is made from five tracks that form a crossing with the possibility to divert the...
Definition Switch.h:439
\ brief Cubic Hermite Spline.
Definition Curve.h:1162
A Switch rearranges the connections between three track ends.
Definition Switch.h:186
A switch that is connecting one narrow end to three outgoing track ends.
Definition Switch.h:326
Interface for making and shaping tracks.
Definition Track.h:831
Collection to hold a set of Track objects.
Definition TrackCollection.h:48
A track system is the container for tracks.
Definition TrackSystem.h:56