Springhead
An open source physics engine for virtual reality, haptics and motion generation.

SpatialVector V(v, w) = [v; w]; SpatialTransform X(R, r) = [R^T, -R^T * r%; O, R^T]; ^Tは転置, は外積行列,Oは零行列. X(R, r) * V(v, w) = [R^T * (v + w % r); R^T * w];. [詳細]

構成

class  TAffine2
 TAffine2行列(回転,拡大,平行移動を表す)行列. [詳細]
 
class  TAffine
 TAffine行列(回転,拡大,平行移動を表す)行列. [詳細]
 
class  UTTypeInfo
 実行時型情報 [詳細]
 
class  UTTypeInfoImp
 実行時型情報クラスの実装 [詳細]
 
class  UTTypeInfoImpAbst
 実行時型情報クラスの実装.抽象クラス版 [詳細]
 
class  UTTypeInfoObjectBase
 実行時型情報を持つクラスの基本クラス [詳細]
 
struct  UTStringLess
 文字列(UTString)を比較する関数オブジェクト型. set<UTString, UTStringLess> などを作るために使える. [詳細]
 
struct  UTContentsLess
 ポインタの中身を比較する関数オブジェクト型. set< int*, UTContentsLess<int> > などに使える. [詳細]
 
struct  UTMemberLess
 クラスのメンバを比較する関数オブジェクト型. set<C, UTMemberLess<C, C::member> > などに使える. [詳細]
 
class  UTPadding
 ostreamに指定の数のスペースを出力するストリームオペレータ(std::endl などの仲間) [詳細]
 
struct  UTEatWhite
 istreamから,空白文字(スペース タブ 改行(CR LF) )を読み出すストリームオペレータ [詳細]
 
class  UTRefCount
 参照カウンタ.UTRef<T>で指されるクラスTは, これを1つだけ継承する必要がある. [詳細]
 
class  UTRef
 参照カウンタ用のポインタ.自動的に参照カウンタを増減, カウンタが0になったら,オブジェクトをdeleteする. [詳細]
 
class  UTRefArray
 UTRefの配列. [詳細]
 
class  UTDeleteRef
 一般オブジェクト用,自動delete ポインタ ポインタが消えるときにオブジェクトをdeleteをする. カウンタはついてないので,複数の UTDeleteRef でオブジェクトを 指すことはできない. [詳細]
 
class  UTStack
 スタックつき vector [詳細]
 
class  UTTreeNode
 ツリーのノード(親子両方向参照) [詳細]
 
class  RingBuffer
 
struct  SpatialTransform
 
struct  SpatialTransformTranspose
 SpatialTransformTranspose. [詳細]
 
struct  SpatialVector
 SpatialVector. [詳細]
 
struct  SpatialMatrix
 SpatialMatrix 行ベクトルをポインタでとるためにTMatrixRowを継承 [詳細]
 
struct  Interpolate
 
class  TCurve
 曲線クラス [詳細]
 
class  TCurveEuclid
 R^n上の曲線 [詳細]
 
class  TCurveQuat
 Quaternionの補間 [詳細]
 
class  TMatrix2
 2x2行列クラス. [詳細]
 
class  TMatrix3
 3x3行列クラス. [詳細]
 
class  TVecDesc
 
class  TVec2
 2次元ベクトルクラス [詳細]
 
class  TVec3
 3次元ベクトルクラス. [詳細]
 
class  TVec4
 4次元ベクトルクラス. [詳細]
 
class  TVec6
 6次元ベクトルクラス. [詳細]
 
class  TQuaternion
 Quaternion/4元数.3x3行列の代わりに回転を表すために使える. 4変数で済む.補間や微分・積分がやりやすい.
TVec3との掛け算は,回転変換でオーバーロードされている. [詳細]
 
class  TPose
 姿勢.位置と向きを表すクラス. TQuaternionTVec3 で向きと位置を表す. TAffineの代わりに使える. [詳細]
 
struct  SwingTwist
 回転のスイング・ツイスト角表現 [詳細]
 
struct  CDShapePairIf
 形状ペアの基本クラス [詳細]
 
struct  CDShapePairState
 直方体のディスクリプタ [詳細]
 
struct  CDShapeIf
 形状の基本クラス [詳細]
 
struct  CDConvexIf
 凸形状の基本クラス [詳細]
 
struct  CDFaceIf
 [詳細]
 
struct  CDQuadFaceIf
 
struct  PHMaterial
 物理シミュレーションに関係する材質 [詳細]
 
struct  CDShapeDesc
 形状のディスクリプタ(基本クラス) [詳細]
 
struct  CDConvexMeshIf
 凸形状のメッシュ [詳細]
 
struct  CDConvexMeshDesc
 凸形状のメッシュのディスクリプタ [詳細]
 
struct  CDConvexMeshInterpolateIf
 凸形状のメッシュ SupportPointの補完つき [詳細]
 
struct  CDConvexMeshInterpolateDesc
 凸形状のメッシュのディスクリプタ [詳細]
 
struct  CDSphereIf
 球体  [詳細]
 
struct  CDSphereDesc
 球体のディスクリプタ  [詳細]
 
struct  CDEllipsoidIf
 楕円体  [詳細]
 
struct  CDEllipsoidDesc
 楕円のディスクリプタ  [詳細]
 
struct  CDCapsuleIf
 カプセル  [詳細]
 
struct  CDCapsuleDesc
 カプセルのディスクリプタ  [詳細]
 
struct  CDRoundConeIf
 カプセルの両端のサイズが違うやつ  [詳細]
 
struct  CDRoundConeDesc
 CDRoundConeIfのディスクリプタ  [詳細]
 
struct  CDBoxIf
 直方体 [詳細]
 
struct  CDBoxDesc
 直方体のディスクリプタ [詳細]
 
struct  CDBounds
 
struct  CDSpatialHashTableIf
 
struct  CDSpatialHashTableDesc
 
struct  CRBodyIf
 クリーチャのボディモデルのインターフェイス [詳細]
 
struct  CRBodyDesc
 クリーチャのボディモデルのデスクリプタ [詳細]
 
struct  CRBoneIf
 クリーチャのボーン(剛体一つ+親ボーンへの関節一つ) [詳細]
 
struct  CRBoneDesc
 
struct  CRControllerIf
 クリーチャ・コントローラの基本クラス [詳細]
 
struct  CRControllerDesc
 
struct  CRGazeControllerIf
 視線コントローラ [詳細]
 
struct  CRGazeControllerDesc
 
struct  CRGrabControllerIf
 把持コントローラ [詳細]
 
struct  CRGrabControllerDesc
 
struct  CRCreatureIf
 クリーチャのインタフェース [詳細]
 
struct  CRCreatureDesc
 クリーチャのデスクリプタ [詳細]
 
struct  CREngineIf
 クリーチャ・エンジンの基本クラス [詳細]
 
struct  CREngineDesc
 
struct  CRReachControllerIf
 軌道運動コントローラ [詳細]
 
struct  CRReachControllerState
 軌道運動コントローラのState [詳細]
 
struct  CRReachControllerDesc
 軌道運動コントローラのデスクリプタ [詳細]
 
struct  CRSdkIf
 クリーチャSdkのインタフェース [詳細]
 
struct  CRSdkDesc
 クリーチャSdkのデスクリプタ [詳細]
 
struct  CRJointTimeSlice
 
struct  CRHingeJointTimeSlice
 
struct  CRBallJointTimeSlice
 
struct  CRJointsTimeSlice
 
struct  CRJointsTimeSeries
 
struct  CRSolidTimeSlice
 
struct  CRSolidsTimeSlice
 
struct  CRSolidsTimeSeries
 
struct  CRContactInfo
 
struct  CRTouchSensorIf
 
struct  CRTouchSensorDesc
 触覚センサのデスクリプタ [詳細]
 
struct  ControlPoint
 
struct  CRTrajectoryPlannerIf
 
struct  CRTrajectoryPlannerDesc
 
struct  CRVisualInfo
 
struct  CRVisualSensorIf
 
struct  CRVisualSensorDesc
 視覚センサのデスクリプタ [詳細]
 
class  EPApp
 
class  EPInterpreter
 
struct  FIFileIf
 ファイルローダ・セーバ [詳細]
 
struct  FIFileSprIf
 Sprファイルのファイルローダとセーバ [詳細]
 
struct  FIFileSprDesc
 
struct  FIFileXIf
 DirectXファイルのファイルローダとセーバ [詳細]
 
struct  FIFileXDesc
 
struct  FIFileVRMLIf
 DirectXファイルのファイルローダとセーバ [詳細]
 
struct  FIFileVRMLDesc
 
struct  FIFileCOLLADAIf
 COLLADAファイルのファイルローダとセーバ [詳細]
 
struct  FIFileCOLLADADesc
 
struct  FIFileBinaryIf
 バイナリファイルのファイルローダとセーバ [詳細]
 
struct  FIFileBinaryDesc
 
struct  ImportDesc
 Importノード [詳細]
 
struct  ImportIf
 ファイル間のインポート関係を管理するクラス. ツリー構造を持つ. [詳細]
 
struct  FIOpStateHandlerIf
 
struct  FISdkIf
 ファイル入出力SDK [詳細]
 
class  XCastPtr
 インタフェースクラスのキャスト [詳細]
 
class  FactoryBase
 Factory (オブジェクトを生成するクラス)の基本クラス [詳細]
 
class  IfInfo
 
インタフェースの型情報クラスの基本クラス.クラス名や継承関係を持っていて,DCAST()などが利用する.

1つのインタフェースクラスに付き1個のインスタンスができる. [詳細]

 
class  IfInfoImp
 IfInfoの実装.1クラス1インスタンス [詳細]
 
struct  ObjectIf
 すべてのインタフェースクラスの基本クラス [詳細]
 
struct  ObjectIfs
 インタフェースクラスへのポインタの配列 [詳細]
 
struct  NamedObjectIf
 名前を持つオブジェクトのインタフェース [詳細]
 
struct  SceneObjectIf
 シーングラフを構成するノードのインタフェース [詳細]
 
struct  ObjectStatesIf
 オブジェクトツリーの状態をメモリ上に保存するためのクラス. SaveState(scene) のように呼び出すと,sceneの子孫全体の状態をメモリに保存する. セーブした後,LoadState(scene) を呼び出すと,sceneの状態を保存時の状態に戻す. セーブ後,シーンのオブジェクトの数や構造が変わってしまうと整合性がとれず, メモリを破壊してしまうので注意が必要. [詳細]
 
class  UTAccessBase
 対象の型にアクセスするためのクラス [詳細]
 
class  UTAccess
 
struct  UTTypeDescIf
 
struct  UTTypeDescDbIf
 
struct  NameManagerIf
 
struct  SceneIf
 
struct  SdkIf
 
class  UTCriticalSection
 
struct  UTAutoLock
 
struct  UTOptimizerIf
 
struct  UTCMAESOptimizerIf
 CMA-ESによる最適化計算 [詳細]
 
struct  UTCMAESOptimizerDesc
 CMAES最適化のデスクリプタ [詳細]
 
class  UTPerformanceMeasureIf
 
struct  UTTimerIf
 
class  FWAppBase
 アプリケーションクラスのベース ウィンドウを持たず、FWSceneとタイマー関連のみを持つ。 ウィンドウを持つ他のアプリケーションに組み込む用途を想定 [詳細]
 
class  FWApp
 アプリケーションクラス Springheadのクラスは基本的に継承せずに使用するように設計されているが, FWAppおよびその派生クラスは例外であり,ユーザはFWAppあるいはその派生クラスを継承し, 仮想関数をオーバライドすることによって独自機能を実装する. [詳細]
 
class  FWHapticApp
 力覚提示を伴う組み込み用アプリケーション [詳細]
 
class  FWConsoleDebugMonitor
 
class  FWEditor
 
class  FWValidator
 Validator. [詳細]
 
class  FWEditorOverlay
 DescViewOverlay shows information on graphics window using text overlay. [詳細]
 
struct  FWFemMeshDesc
 
struct  FWFemMeshIf
 
struct  FWFemMeshNewDesc
 
struct  FWFemMeshNewIf
 
struct  FWHapticPointerIf
 
struct  FWJoyStickGLUTIf
 GLUTジョイスティック [詳細]
 
struct  FWJoyStickGLUTDesc
 
struct  FWKeyMouseGLUTIf
 GLUTマウス [詳細]
 
struct  FWKeyMouseGLUTDesc
 
struct  FWObjectDesc
 
struct  FWObjectIf
 Frameworkのオブジェクト 剛体(PhysicsモジュールのPHSolid)とシーングラフのフレーム(GraphicsモジュールのGRFrame)を 関連付けるオブジェクト. これによってシミュレーションによる剛体の位置の変化がシーングラフに自動的に反映される. Frameworkを利用する場合はPHSceneIf::CreateSolidやGRSceneIf::CreateFrameの代わりに FWSceneIf::CreateObjectを使用する. [詳細]
 
struct  FWOpHapticHandlerIf
 
struct  FWOpObjDesc
 
struct  FWOpObjIf
 
class  FWGroundConstraint
 
class  FWUngroundedConstraint
 
struct  JointPos
 
struct  FWObjectiveValues
 
struct  FWOptimizerIf
 
struct  FWOptimizerDesc
 
struct  FWStaticTorqueOptimizerIf
 
struct  FWStaticTorqueOptimizerDesc
 
struct  FWSceneDesc
 
struct  FWSceneIf
 
struct  FWSdkDesc
 
struct  FWSdkIf
 Framework SDK FWSdk - PHSdk GRSdk FISdk HISdk FWScene[] GRRender[]. [詳細]
 
struct  FWSkeletonSensorDesc
 SkeletonSensorのデスクリプタ [詳細]
 
struct  FWSkeletonSensorIf
 SkeletonSensorのインタフェース [詳細]
 
struct  FWWinBaseIf
 @ウィンドウの基底クラス [詳細]
 
struct  FWWinBaseDesc
 
struct  FWControlIf
 GUIアイテム [詳細]
 
struct  FWControlDesc
 
struct  FWPanelIf
 パネル [詳細]
 
struct  FWPanelDesc
 
struct  FWButtonIf
 ボタン [詳細]
 
struct  FWButtonDesc
 
struct  FWStaticTextIf
 静的テキスト [詳細]
 
struct  FWStaticTextDesc
 
struct  FWTextBoxIf
 テキストボックス [詳細]
 
struct  FWTextBoxDesc
 
struct  FWListBoxIf
 リストボックス 選択されているアイテムの取得はGetInt, アイテムの選択はSetIntで行う. 選択アイテムが変化するとOnControlUpdateが呼ばれる [詳細]
 
struct  FWListBoxDesc
 
struct  FWRotationControlIf
 回転コントロール [詳細]
 
struct  FWRotationControlDesc
 
struct  FWTranslationControlIf
 平行移動コントロール [詳細]
 
struct  FWTranslationControlDesc
 
struct  FWDialogIf
 ダイアログボックス(GUIコンテナ) [詳細]
 
struct  FWDialogDesc
 
struct  FWWinIf
 ウィンドウ window ID, scene, renderを持つ. [詳細]
 
struct  FWWinDesc
 
struct  GRBlendMeshDesc
 表示用のBlendMesh(GRBlendMesh)のデスクリプタ. [詳細]
 
struct  GRBlendMeshIf
 グラフィックスで使う表示用のBlendMesh [詳細]
 
struct  GRVisualDesc
 ビジュアルのディスクリプタ [詳細]
 
struct  GRVisualIf
 グラフィックスで表示に影響を与えるもの [詳細]
 
struct  GRFrameTransformMatrix
 DirectX の Frame の変換を表す FrameTransformMatrix ノードを読むためのDesc. [詳細]
 
struct  GRFrameIf
 グラフィックスシーングラフのツリーのノード.座標系を持つ. [詳細]
 
struct  GRFrameDesc
 GRFrame のDesc.座標系を指定する [詳細]
 
struct  GRDummyFrameIf
 グラフィクスのシーングラフのダミーノード. 後でプログラムから使うために,Visualを入れておくためのコンテナ. 描画などをしないので安心してしまっておける. [詳細]
 
struct  GRDummyFrameDesc
 GRDummyFrame のDesc.ダミーフレーム. Meshなどを表示したくはないが,とりあえずロードだけしておき, 後でプログラムで参照したい場合,ダミーフレームに入れておけば 無駄な描画がされない. [詳細]
 
struct  GRKey
 アニメーションのデスクリプタ XのAnimationに対応 [詳細]
 
struct  GRAnimationKey
 時刻と変換の対応表 XのAnimationKeyに対応 [詳細]
 
struct  GRAnimationIf
 アニメーション(GRFrameのツリーを動かす) [詳細]
 
struct  GRAnimationDesc
 
struct  GRAnimationSetIf
 アニメーション(GRFrameのツリーを動かす) [詳細]
 
struct  GRAnimationSetDesc
 アニメーションセットのデスクリプタ [詳細]
 
struct  GRAnimationControllerIf
 アニメーション(GRFrameのツリーを動かす) [詳細]
 
struct  GRAnimationControllerDesc
 アニメーションコントローラのデスクリプタ [詳細]
 
struct  GRMeshFace
 
struct  GRSkinWeightIf
 
struct  GRSkinWeightDesc
 
struct  GRMeshIf
 グラフィックスで使う表示用のMesh [詳細]
 
struct  GRMeshDesc
 表示用のMesh(GRMesh)のデスクリプタ. [詳細]
 
class  GRFont
 テキスト描画のフォント [詳細]
 
struct  GRLightIf
 光源のインタフェース [詳細]
 
struct  GRLightDesc
 光源 [詳細]
 
struct  GRMaterialIf
  材質のインタフェース   [詳細]
 
struct  GRMaterialDesc
 材質 [詳細]
 
struct  GRCameraIf
 カメラのインタフェース [詳細]
 
struct  GRCameraDesc
 カメラの情報 [詳細]
 
struct  GRShadowLightIf
 影生成ライト [詳細]
 
struct  GRShadowLightDesc
 
struct  GRRenderBaseIf
 グラフィックスレンダラーのインタフェース(ユーザインタフェース) [詳細]
 
struct  GRRenderIf
 グラフィックスレンダラーのインタフェース(デバイスの設定、カメラの設定) [詳細]
 
struct  GRDeviceIf
 グラフィックスレンダラーのデバイスクラス.OpenGLやDirectXのラッパ [詳細]
 
struct  GRDeviceGLIf
 OpenGLのレンダラー基本クラス [詳細]
 
struct  GRSceneDesc
 GRScene のDesc.中身無し. [詳細]
 
struct  GRSceneIf
 グラフィックスシーングラフ [詳細]
 
struct  GRSdkDesc
 GRSdkDesc GRSDKの設定.DirectXを使うかOpenGLを使うかの選択などがここに入る予定. [詳細]
 
struct  GRSdkIf
 グラフィックスSDKの基本クラス  [詳細]
 
struct  SFBlendLocation
 
struct  GRShaderDesc
 シェーダ情報 [詳細]
 
struct  GRShaderIf
 
struct  GRShaderFormat
 
struct  GRSphereIf
 グラフィックスで使う表示用のSphere [詳細]
 
struct  GRSphereDesc
 表示用のSphere(GRSphere)のデスクリプタ. [詳細]
 
struct  GRVertexElement
 頂点フォーマット.DirectX9の D3DVERTEXELEMENT を参照. GRRender->SetVertexFormat()に配列を渡す. GRRenderは,配列を見て,適当なシェーダーを設定する. シェーダーが見つからない場合は,NULLシェーダーを設定する=描画されない. DrawDirect/DrawIndexed はシェーダーを使って描画する. [詳細]
 
struct  GRVertexArray
 インターリーブされていない頂点バッファの指定 [詳細]
 
struct  GRAnimationMeshDesc
 GRAnimationMeshのデスクリプタ. [詳細]
 
struct  GRAnimationMeshBlendData
 SetBlend()で使う。 [詳細]
 
struct  GRAnimationMeshIf
 グラフィックスで使うキャラクタアニメーション表示用のMesh [詳細]
 
struct  GRDeviceD3DIf
 DirectXのレンダラー基本クラス [詳細]
 
struct  GRDebugRenderD3DIf
 DirectXのデバッグ情報レンダラーの基本クラス [詳細]
 
struct  GRSdkD3DDesc
 
struct  GRSdkD3DIf
 DirectXのグラフィックスSDKの基本クラス  [詳細]
 
struct  HIBaseIf
 ヒューマンインタフェースの基本クラス [詳細]
 
struct  HIPoseIf
 位置入力インタフェース [詳細]
 
struct  HIHapticIf
 6自由度力覚インタフェースの基本クラス [詳細]
 
struct  HIHapticDummyDesc
 
struct  HIHapticDummyIf
 
struct  HIDeviceIf
 デバイスの基本クラス [詳細]
 
struct  HIRealDeviceIf
 実デバイス.インタフェースカードとか,USBデバイスとか, [詳細]
 
struct  HIVirtualDeviceIf
 バーチャルデバイス.A/D, D/Aの1チャンネル分とか,機能としてのデバイス. [詳細]
 
struct  DVAdIf
 A/D変換 [詳細]
 
struct  DVDaIf
 D/A変換 [詳細]
 
struct  DVCounterIf
 カウンタ [詳細]
 
struct  DVPortEnum
 入出力ポートのための定数の定義などだけを行う. [詳細]
 
struct  DVPioIf
 パラレルI/O [詳細]
 
struct  DVForceIf
 力の入力 [詳細]
 
struct  DRUARTMotorDriverIf
 
struct  DRUARTMotorDriverDesc
 
struct  DRUsb20SimpleIf
 CyverseのUSBデバイス [詳細]
 
struct  DRUsb20SimpleDesc
 
struct  DRUsb20Sh4If
 
struct  DRUsb20Sh4Desc
 
struct  DRCyUsb20Sh4If
 
struct  DRCyUsb20Sh4Desc
 
struct  DVJoyStickMask
 
struct  DVJoyStickCallback
 仮想ジョイスティック ・使用方法は仮想マウスと同様 [詳細]
 
struct  DVJoyStickIf
 ジョイスティック仮想デバイス [詳細]
 
struct  DVButtonMask
 仮想キーボード・マウス ・キー・マウスイベントを処理するクラスはDVKeyMouseCallbackを継承しイベントハンドラを実装する ・その上でDVKeyMouseBaseIf::AddCallbackで自身を登録する ・ハンドラは複数登録可能. [詳細]
 
struct  DVButtonSt
 
struct  DVKeySt
 
struct  DVKeyCode
 ascii以外の特殊キーコード.値はGLUTの特殊キーコードに256を加算したもの. [詳細]
 
struct  DVKeyMouseCallback
 
struct  DVKeyMouseIf
 キーボード・マウス仮想デバイス [詳細]
 
struct  DRKeyMouseWin32If
 Win32マウス [詳細]
 
struct  DRKeyMouseWin32Desc
 
struct  HIKorokoroMotorIf
 
struct  HIKorokoroMotorDesc
 
struct  HIKorokoroIf
 
struct  HIKorokoroDesc
 
struct  HILeapIf
 Leapmotionのインタフェース [詳細]
 
struct  HILeapDesc
 Leapmotionのデスクリプタ [詳細]
 
struct  HILeapUDPIf
 LeapmotionUDPのインターフェース [詳細]
 
struct  HILeapUDPDesc
 LeapmotionUDPのデスクリプタ [詳細]
 
struct  HINovintFalconIf
 NovintFalconのインタフェース [詳細]
 
struct  HINovintFalconDesc
 
struct  HISdkDesc
 
struct  HISdkIf
 物理シミュレーションSDK [詳細]
 
struct  HIBoneIf
 SkeletonSensorが返すスケルトンに含まれるボーン [詳細]
 
struct  HISkeletonIf
 SkeletonSensorが返すスケルトン [詳細]
 
struct  HISkeletonSensorIf
 SkeletonSensorのインタフェース [詳細]
 
struct  HISpaceNavigatorIf
 SpaceNavigatorのインタフェース [詳細]
 
struct  HISpaceNavigatorDesc
 
struct  HISpidarMotorIf
 
struct  HISpidarMotorDesc
 
struct  HISpidarIf
 
struct  HISpidarDesc
 
struct  HISpidar4If
 Spidar4の基本クラス [詳細]
 
struct  HISpidar4Desc
 Spidar4のデスクリプタ [詳細]
 
struct  HISpidar4DIf
 Spidar4の基本クラス [詳細]
 
struct  HISpidar4DDesc
 
struct  HISpidarGIf
 SpidarG6の基本クラス [詳細]
 
struct  HISpidarGDesc
 SpidarG6のデスクリプタ [詳細]
 
struct  HITrackballDesc
 
struct  HITrackballCallback
 トラックボールのコールバッククラス [詳細]
 
struct  HITrackballIf
 
struct  HIXbox360ControllerIf
 
struct  HIXbox360ControllerDesc
 
struct  PHEngineIf
 
struct  PHConstraintEngineIf
 
struct  PHConstraintEngineDesc
 
struct  PHGravityEngineIf
 
struct  PHPenaltyEngineIf
 
struct  PHIKEngineDesc
 
struct  PHIKEngineIf
 
struct  PHTrackingEngineIf
 
struct  PHFemEngineIf
 For historical reason, there are two kinds of FEM mesh, FemMesh and FemMeshNew. [詳細]
 
struct  PHOpEngineIf
 
struct  PHFemMeshState
 FemMeshのステート [詳細]
 
struct  PHFemMeshDesc
 FemMeshのディスクリプタ [詳細]
 
struct  PHFemMeshIf
 FEM用の四面体メッシュ [詳細]
 
struct  PHFemMeshThermoDesc
 FemMeshThermoのディスクリプタ [詳細]
 
struct  PHFemMeshThermoIf
 温度のFEM用のメッシュ [詳細]
 
struct  PHFemMeshNewState
 FemMeshのステート [詳細]
 
struct  PHFemMeshNewDesc
 FemMeshのディスクリプタ [詳細]
 
struct  PHFemMeshNewIf
 PHFemMeshNewへのインタフェース [詳細]
 
struct  PHFemBaseDesc
 Femのデスクリプタ [詳細]
 
struct  PHFemBaseIf
 Femの共通計算部分 [詳細]
 
struct  PHFemVibrationDesc
 振動計算のデスクリプタ [詳細]
 
struct  PHFemVibrationIf
 振動計算 [詳細]
 
struct  PHFemThermoDesc
 FemThermoのデスクリプタ [詳細]
 
struct  PHFemThermoIf
 温度のFEM用のメッシュ [詳細]
 
struct  PHFemPorousWOMoveDesc
 
struct  PHFemPorousWOMoveIf
 
struct  PHHapticPointerDesc
 
struct  PHHapticPointerIf
 
struct  PHShapePairForHapticIf
 
struct  PHSolidPairForHapticIf
 
struct  PHHapticEngineDesc
 
struct  PHHapticEngineIf
 
struct  PHIKEndEffectorState
 IKのエンドエフェクタ(到達目標に向けて動かされるもの) [詳細]
 
struct  PHIKEndEffectorDesc
 IKエンドエフェクタのデスクリプタ [詳細]
 
struct  PHIKEndEffectorIf
 IKエンドエフェクタのインタフェース [詳細]
 
struct  PHIKActuatorIf
 IK用のアクチュエータ(目標の達成のために用いることのできる作動部品(おもに関節に付随)) [詳細]
 
struct  PHIKActuatorState
 IKアクチュエータのステート [詳細]
 
struct  PHIKActuatorDesc
 IKアクチュエータのディスクリプタ [詳細]
 
struct  PHIKBallActuatorIf
 3軸アクチュエータ(PHBallJointを駆動する) [詳細]
 
struct  PHIKBallActuatorDesc
 3軸アクチュエータのディスクリプタ [詳細]
 
struct  PHIKHingeActuatorIf
 1軸アクチュエータ(PHHingeJointを駆動する) [詳細]
 
struct  PHIKHingeActuatorDesc
 1軸アクチュエータのディスクリプタ [詳細]
 
struct  PHIKSpringActuatorIf
 6軸アクチュエータ(PHSpringを駆動する) [詳細]
 
struct  PHIKSpringActuatorDesc
 6軸アクチュエータのディスクリプタ [詳細]
 
struct  PHConstraintDesc
 拘束のデスクリプタ [詳細]
 
struct  PHConstraintIf
 拘束のインタフェース [詳細]
 
struct  PHConstraintsIf
 拘束の集合のインタフェース [詳細]
 
struct  PHContactPointIf
 接触点拘束のインタフェース [詳細]
 
struct  PHJointDesc
 関節のデスクリプタ [詳細]
 
struct  PHJointIf
 関節のインタフェース [詳細]
 
struct  PH1DJointDesc
 1軸関節のデスクリプタ [詳細]
 
struct  PH1DJointIf
 1軸関節のインタフェース [詳細]
 
struct  PHHingeJointIf
 ヒンジのインタフェース [詳細]
 
struct  PHHingeJointDesc
 ヒンジのデスクリプタ [詳細]
 
struct  PHSliderJointIf
 スライダのインタフェース [詳細]
 
struct  PHSliderJointDesc
 スライダのデスクリプタ [詳細]
 
struct  PHPathPoint
 パス上の1つの点 [詳細]
 
struct  PHPathDesc
 パスのデスクリプタ [詳細]
 
struct  PHPathIf
 パスのインタフェース [詳細]
 
struct  PHPathJointIf
 パスジョイントのインタフェース [詳細]
 
struct  PHPathJointDesc
 パスジョイントのデスクリプタ [詳細]
 
class  PHGenericJointCallback
 
struct  PHGenericJointIf
 
struct  PHGenericJointDesc
 
struct  PHBallJointIf
 ボールジョイントのインタフェース [詳細]
 
struct  PHBallJointDesc
 ボールジョイントのデスクリプタ [詳細]
 
struct  PHFixJointIf
 固定関節 自由度を持たない関節.剛体同士の固定に用いる [詳細]
 
struct  PHFixJointDesc
 
struct  PHSpringIf
 バネダンパのインタフェース [詳細]
 
struct  PHSpringDesc
 バネダンパのデスクリプタ [詳細]
 
struct  PHMateIf
 合致拘束 多様な幾何拘束を課すのに利用 3DCADのアセンブリ拘束のようなイメージ PHJointとの違いは ・PHJointLimitがない ・PHJointMotorがない ・PHTreeNodeでABAが利用できない [詳細]
 
struct  PHMateDesc
 
struct  PHPointToPointMateIf
 点-点対偶 ソケットとプラグの原点を一致させる ボールジョイントと似ているが低機能な分高速 [詳細]
 
struct  PHPointToPointMateDesc
 
struct  PHPointToLineMateIf
 点-線分対偶 プラグの原点をソケットのz軸上に拘束する 軸上の範囲も指定可 [詳細]
 
struct  PHPointToLineMateDesc
 
struct  PHPointToPlaneMateIf
 点-面対偶 プラグの原点をソケットのxy平面上に拘束する 面上(z方向)の範囲も指定可 [詳細]
 
struct  PHPointToPlaneMateDesc
 
struct  PHLineToLineMateIf
 線-線対偶 プラグのz軸とソケットのz軸を一致させる [詳細]
 
struct  PHLineToLineMateDesc
 
struct  PHPlaneToPlaneMateIf
 面-面対偶 プラグのxy平面とソケットのxy平面を一致させる [詳細]
 
struct  PHPlaneToPlaneMateDesc
 
struct  PHTreeNodeDesc
 ツリーノードのデスクリプタ [詳細]
 
struct  PHRootNodeState
 
struct  PHRootNodeDesc
 
struct  PHTreeNode1DDesc
 
struct  PHHingeJointNodeDesc
 
struct  PHSliderJointNodeDesc
 
struct  PHPathJointNodeDesc
 
struct  PHGenericJointNodeDesc
 
struct  PHBallJointNodeDesc
 
struct  PHFixJointNodeDesc
 
struct  PHTreeNodeIf
 ツリーノードのインタフェース [詳細]
 
struct  PHRootNodeIf
 ルートノードのインタフェース [詳細]
 
struct  PHTreeNode1DIf
 1軸関節ノードのインタフェース [詳細]
 
struct  PHHingeJointNodeIf
 
struct  PHSliderJointNodeIf
 
struct  PHPathJointNodeIf
 
struct  PHGenericJointNodeIf
 
struct  PHBallJointNodeIf
 
struct  PHFixJointNodeIf
 
struct  PHGearDesc
 ギアのデスクリプタ [詳細]
 
struct  PHGearIf
 ギアのインタフェース [詳細]
 
struct  PH1DJointLimitIf
 1自由度関節可動域拘束のインタフェース [詳細]
 
struct  PH1DJointLimitDesc
 1自由度関節の可動域拘束 [詳細]
 
struct  PHBallJointLimitIf
 ボールジョイント可動域制限のインタフェース [詳細]
 
struct  PHBallJointLimitDesc
 ボールジョイントの可動域制限のステート [詳細]
 
struct  PHBallJointConeLimitIf
 ボールジョイントの円錐可動域制限のインタフェース [詳細]
 
struct  PHBallJointConeLimitDesc
 ボールジョイントの円錐可動域制限のデスクリプタ [詳細]
 
struct  PHSplineLimitNode
 スプライン制御点 スプライン閉曲線の制御点 [詳細]
 
struct  PHBallJointSplineLimitIf
 ボールジョイントのスプライン可動域制限のインタフェース [詳細]
 
struct  PHBallJointSplineLimitDesc
 ボールジョイントのスプライン可動域制限のデスクリプタ [詳細]
 
struct  PHBallJointIndependentLimitIf
 
struct  PHBallJointIndependentLimitDesc
 
struct  PH1DJointMotorIf
 1自由度関節モータのインタフェース [詳細]
 
struct  PH1DJointMotorDesc
 1自由度関節モータのデスクリプタ [詳細]
 
struct  PH1DJointNonLinearMotorDesc
 1自由度関節非線形モータのデスクリプタ [詳細]
 
struct  PH1DJointNonLinearMotorIf
 1自由度関節非線形モータのインタフェース [詳細]
 
struct  PHHuman1DJointResistanceIf
 1自由度人体関節抵抗のインタフェース [詳細]
 
struct  PHHuman1DJointResistanceDesc
 1自由度人体関節特性抵抗のデスクリプタ [詳細]
 
struct  PHBallJointMotorIf
 ボールジョイントモータのインタフェース [詳細]
 
struct  PHBallJointMotorDesc
 ボールジョイントモータのデスクリプタ [詳細]
 
struct  PHBallJointNonLinearMotorIf
 ボールジョイント非線形モータのインタフェース [詳細]
 
struct  PHBallJointNonLinearMotorDesc
 ボールジョイント非線形モータのデスクリプタ [詳細]
 
struct  PHHumanBallJointResistanceIf
 3自由度人体関節抵抗のインタフェース [詳細]
 
struct  PHHumanBallJointResistanceDesc
 3自由度人体関節特性抵抗のデスクリプタ [詳細]
 
struct  PHSpringMotorIf
 バネのモータのインタフェース [詳細]
 
struct  PHSpringMotorDesc
 バネのモータのデスクリプタ [詳細]
 
struct  PHInactiveSolids
 お互いに衝突しない剛体を設定 [詳細]
 
struct  PHOpObjState
 剛体のステート [詳細]
 
struct  PHOpHapticRendererDesc
 
struct  PHOpObjDesc
 
struct  PHOpObjIf
 剛体のインタフェース [詳細]
 
struct  PHOpParticleDesc
 
struct  PHOpGroupDesc
 
struct  PHOpParticleIf
 
struct  PHOpGroupIf
 
struct  PHOpHapticControllerDesc
 
struct  PHOpHapticControllerIf
 
struct  PHOpHapticRendererIf
 
struct  PHOpAnimationDesc
 
struct  PHOpAnimationIf
 
struct  PHOpSpHashColliAgentDesc
 
struct  PHOpSpHashColliAgentIf
 
struct  PHRaycastHit
 Ray castの結果保存用 [詳細]
 
struct  PHRayDesc
 
struct  PHRayIf
 
struct  PHSceneState
 物理エンジンのシーンの状態 [詳細]
 
struct  PHSceneDesc
 物理エンジンのシーンのデスクリプタ [詳細]
 
struct  PHSceneIf
 シーン [詳細]
 
struct  PHSdkDesc
 
struct  PHSdkIf
 物理シミュレーションSDK [詳細]
 
struct  PHBoneDesc
 
struct  PHBoneIf
 
struct  PHSkeletonDesc
 
struct  PHSkeletonIf
 
struct  PHFrameDesc
 形と位置を指定するための衝突判定用フレーム [詳細]
 
struct  PHFrameIf
 
struct  PHBodyIf
 
struct  PHSolidState
 剛体のステート [詳細]
 
struct  PHSolidDesc
 剛体のディスクリプタ [詳細]
 
struct  PHSolidIf
 剛体のインタフェース [詳細]
 
struct  PHShapePairForLCPIf
 
class  PHCollisionListener
 
struct  PHSolidPairIf
 
struct  PHSolidPairForLCPIf
 

型定義

typedef TAffine2< float > Affine2f
 float版2次元アフィン行列.
 
typedef TAffine2< double > Affine2d
 double版2次元アフィン行列.
 
typedef TAffine< float > Affinef
 float版3次元アフィン行列.
 
typedef TAffine< double > Affined
 double版3次元アフィン行列.
 
typedef std::string UTString
 文字列.str::stringの別名
 
typedef PTM::TMatrixRow
< 6, 6, double > 
Matrix6d
 
typedef SpatialMatrix::SubMatrix SubMatrx3of6d
 
typedef TCurveEuclid< float,
float > 
Curvef
 
typedef TCurveEuclid< double,
double > 
Curved
 
typedef TCurveEuclid< Vec2f,
float > 
Curve2f
 
typedef TCurveEuclid< Vec2d,
double > 
Curve2d
 
typedef TCurveEuclid< Vec3f,
float > 
Curve3f
 
typedef TCurveEuclid< Vec3d,
double > 
Curve3d
 
typedef TCurveEuclid< Vec4f,
float > 
Curve4f
 
typedef TCurveEuclid< Vec4d,
double > 
Curve4d
 
typedef TCurveQuat< float > QuatCurvef
 
typedef TCurveQuat< double > QuatCurved
 
typedef TMatrix2< float > Matrix2f
 float版2×2行列.
 
typedef TMatrix2< double > Matrix2d
 double版2×2行列.
 
typedef TMatrix3< float > Matrix3f
 float版3×3行列.
 
typedef TMatrix3< double > Matrix3d
 double版3×3行列.
 
typedef TVec2< int > Vec2i
 int版2次元ベクトル
 
typedef TVec2< float > Vec2f
 float版2次元ベクトル
 
typedef TVec2< double > Vec2d
 double版2次元ベクトル
 
typedef TVec3< int > Vec3i
 int版3次元ベクトル
 
typedef TVec3< float > Vec3f
 float版3次元ベクトル
 
typedef TVec3< double > Vec3d
 double版3次元ベクトル
 
typedef TVec4< int > Vec4i
 int版4次元ベクトル
 
typedef TVec4< float > Vec4f
 float版4次元ベクトル
 
typedef TVec4< double > Vec4d
 double版4次元ベクトル
 
typedef TVec6< int > Vec6i
 int版6次元ベクトル
 
typedef TVec6< float > Vec6f
 float版6次元ベクトル
 
typedef TVec6< double > Vec6d
 double版6次元ベクトル
 
typedef TQuaternion< float > Quaternionf
 float版TQuaternion.
 
typedef TQuaternion< double > Quaterniond
 double版TQuaternion.
 
typedef TPose< float > Posef
 float版TPose.
 
typedef TPose< double > Posed
 double版TPose.
 
typedef long long UTLongLong
 
typedef void(SPR_CDECLGRAnimationMeshDrawSubsetListenerFunc )(DWORD attribId, void *ptr)
 

列挙型

enum  CRJointTimeSliceFlag {
  CRJT_SPRING, CRJT_DAMPER, CRJT_ANGLE, CRJT_VELOCITY,
  CRJT_ACCELERATION, CRJT_TORQUE
}
 
enum  CRSolidTimeSliceFlag {
  CRST_POSE, CRST_VELOCITY, CRST_ACCELERATION, CRST_SPRING,
  CRST_DAMPER
}
 
enum  GRVertexElementType {
  GRVET_FLOAT1 = 0, GRVET_FLOAT2 = 1, GRVET_FLOAT3 = 2, GRVET_FLOAT4 = 3,
  GRVET_D3DCOLOR = 4, GRVET_UBYTE4 = 5, GRVET_SHORT2 = 6, GRVET_SHORT4 = 7,
  GRVET_UBYTE4N = 8, GRVET_SHORT2N = 9, GRVET_SHORT4N = 10, GRVET_USHORT2N = 11,
  GRVET_USHORT4N = 12, GRVET_UDEC3 = 13, GRVET_DEC3N = 14, GRVET_FLOAT16_2 = 15,
  GRVET_FLOAT16_4 = 16, GRVET_UNUSED = 17
}
 
enum  GRVertexElementMethod {
  GRVEM_DEFAULT = 0, GRVEM_PARTIALU = 1, GRVEM_PARTIALV = 2, GRVEM_CROSSUV = 3,
  GRVEM_UV = 4, GRVEM_STRQ = 5, GRVEM_LOOKUP = 6, GRVEM_LOOKUPPRESAMPLED = 7
}
 
enum  GRVertexElementUssage {
  GRVEU_POSITION = 0, GRVEU_BLENDWEIGHT = 1, GRVEU_BLENDINDICES = 2, GRVEU_NORMAL = 3,
  GRVEU_PSIZE = 4, GRVEU_TEXCOORD = 5, GRVEU_TANGENT = 6, GRVEU_BINORMAL = 7,
  GRVEU_TESSFACTOR = 8, GRVEU_POSITIONT = 9, GRVEU_COLOR = 10, GRVEU_FOG = 11,
  GRVEU_DEPTH = 12, GRVEU_SAMPLE = 13
}
 

関数

template<class T >
abs (T t)
 
template<class T >
sign (T t)
 符号(正なら1, 負なら -1 を返す)
 
template<class T >
min (T a, T b)
 小さい方を返す
 
template<class T >
max (T a, T b)
 大きい方を返す
 
template<class T >
ave (T a, T b)
 平均をとる
 
double Rad (double deg)
 度をラジアンに変換
 
float Radf (double deg)
 
double Deg (double rad)
 ラジアンを度に変換
 
float Degf (double rad)
 
template<class SC >
SC Square (SC x)
 2乗
 
template<class SC >
SC Det2 (SC a, SC b, SC c, SC d)
 2x2行列の行列式
 
template<class TD , class TV >
TVec2< TV > operator* (const PTM::TMatrixBase< 3, 3, TD > &a, const TVec2< TV > &b)
 TAffine2とベクトルの掛け算
 
template<class TD , class TV >
TVec3< TV > operator* (const PTM::TMatrixBase< 4, 4, TD > &a, const TVec3< TV > &b)
 TAffineとベクトルの掛け算
 
template<class T , class P >
T * UTDcastImp (P p)
 
template<class T , class P >
T * UTAcastImp (P p)
 
template<class TP , class P >
TP UTDcastpImp (P p)
 
template<class TP , class P >
TP UTAcastpImp (P p)
 
char * UTAcastError (const char *)
 キャストに失敗した場合のassert関数
 
bool operator< (const UTString &u1, const UTString &u2)
 
template<class T >
bool UTContentsEqual (const T &t1, const T &t2)
 ポインタの中身が等しいか調べる関数オブジェクト型.
 
std::ostream & operator<< (std::ostream &os, UTPadding p)
 
std::istream & operator>> (std::istream &is, const UTEatWhite &e)
 
template<class T >
T & Singleton ()
 シングルトンクラス. プログラム内に,オブジェクトを1つだけ作りたく, いつでも使いたい場合に利用するもの.
 
template<class T , class U >
assert_cast (U u)
 assert_cast SPR_DEBUG定義時はdynamic_cast、それ以外ではstatic_castとして働く。 dynamic_castに失敗するとstd::bad_cast例外を発生する。 RTTIを使うC++のdynamic_castを使用する.DCASTの類は使わない
 
Matrix3d VVtr (const Vec3d &v1, const Vec3d &v2)
 v1 * v2^T で得られる行列
 
SpatialTransform operator* (const SpatialTransform &lhs, const SpatialTransform &rhs)
 
SpatialTransformTranspose operator* (const SpatialTransformTranspose &lhs, const SpatialTransformTranspose &rhs)
 
double QuadForm (const SpatialVector &v1, const SpatialMatrix &M, const SpatialVector &v2)
 
SpatialVector operator+ (const SpatialVector &lhs, const SpatialVector &rhs)
 
SpatialVector operator- (const SpatialVector &lhs, const SpatialVector &rhs)
 
SpatialVector operator* (double k, const SpatialVector &V)
 
SpatialVector operator* (const SpatialVector &V, double k)
 
double operator* (const SpatialVector &lhs, const SpatialVector &rhs)
 
SpatialVector operator* (const SpatialTransform &X, const SpatialVector &V)
 
SpatialVector operator* (const SpatialTransformTranspose &X, const SpatialVector &V)
 
SpatialVector operator/ (const SpatialVector &lhs, double k)
 
SpatialMatrix operator+ (const SpatialMatrix &lhs, const SpatialMatrix &rhs)
 
SpatialMatrix operator- (const SpatialMatrix &lhs, const SpatialMatrix &rhs)
 
SpatialMatrix operator* (const SpatialMatrix &lhs, const SpatialMatrix &rhs)
 
SpatialMatrix operator* (double lhs, const SpatialMatrix &rhs)
 
SpatialMatrix operator* (SpatialMatrix &lhs, double rhs)
 
SpatialMatrix operator- (SpatialMatrix &X)
 
SpatialVector operator* (const SpatialMatrix &M, const SpatialVector &V)
 
SpatialMatrix VVtr (const SpatialVector &lhs, const SpatialVector &rhs)
 
void Xtr_Mat_X (SpatialMatrix &Y, const SpatialTransform &X, const SpatialMatrix &A)
 
template<class P , class V , class T >
InterpolatePos (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 補間関数
 
template<class P , class V , class T >
InterpolateVel (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 
template<class P , class V , class T >
InterpolateAcc (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 
template<class P , class V , class T >
InterpolateOri (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 
template<class P , class V , class T >
InterpolateAngvel (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 
template<class P , class V , class T >
InterpolateAngacc (T t, T t0, P p0, V v0, T t1, P p1, V v1, int type)
 
template<class T >
bool IsUnitary (TMatrix3< T > r)
 
template<class A , class B >
TQuaternion< A > operator* (const TQuaternion< A > &q1, const TQuaternion< B > &q2)
 TQuaternion 同士の掛け算.回転変換としては,合成になる.
 
template<class ET , class BD >
TYPENAME BD::ret_type operator* (const TQuaternion< ET > &q, const PTM::TVectorBase< 3, BD > &v)
 TQuaternionでベクトルを回転. Quaternion * vector * Quaternion^{*} と同じ.
 
template<class ET , class BD >
TYPENAME BD::ret_type operator* (const TQuaternion< ET > &q, const PTM::TMatrixBase< 3, 3, BD > &m)
 TQuaternionで行列を回転. TQuaternion * (ex,ey,ez) * TQuaternion.conjugated() と同じ.
 
template<class T1 , class T2 >
T1 dot (const TQuaternion< T1 > &q1, const TQuaternion< T2 > &q2)
 TQuaternion の内積.
 
template<class ET , class BD >
TQuaternion< ET > mult (const TQuaternion< ET > &q, const PTM::TVectorBase< 3, BD > &v)
 回転操作をせず,普通にQuaternionとベクトルの積を求める
 
template<class BD , class ET >
TQuaternion< ET > mult (const PTM::TVectorBase< 3, BD > &v, const TQuaternion< ET > &q)
 回転操作をせず,普通にベクトルとQuaternionの積を求める
 
template<class T1 , class T2 >
TQuaternion< T1 > interpolate (T1 t, const TQuaternion< T1 > &q1, const TQuaternion< T2 > &q2)
 
template<class EP , class EV >
TVec3< EV > operator* (const TPose< EP > &p, const TVec3< EV > &v)
 
template<class EA , class EB >
TPose< EA > operator* (const TPose< EA > &a, const TPose< EB > &b)
 
template<class EA , class EB >
TPose< EA > interpolate (EA t, const TPose< EA > &p0, const TPose< EB > &p1)
 Poseの補間
 
void FpCheckPrint (const char *f, const char *exp, const char *file, int line)
 
void FpCheckAssert (const char *exp, const char *file, int line)
 
template<class D >
bool IsFinite (const PTM::VectorImp< D > &v)
 
template<class D >
bool IsFinite (const PTM::MatrixImp< D > &v)
 
bool IsFinite (const double &v)
 
template<class D >
bool IsNotZero (const PTM::VectorImp< D > &v)
 
bool IsNotZero (const double &v)
 
template<class D >
bool IsPositive (const PTM::VectorImp< D > &v)
 
bool IsPositive (const double &v)
 
template<class D >
bool IsUnit (const PTM::VectorImp< D > &v)
 
template<class D >
bool IsUnit (const PTM::MatrixImp< D > &v)
 
bool IsUnit (const double &v)
 
template<class V >
bool FpCheckFinite (const V &v, const char *exp, const char *file, int line)
 
template<class V >
bool FpCheckNotZero (const V &v, const char *exp, const char *file, int line)
 
template<class V >
bool FpCheckPositive (const V &v, const char *exp, const char *file, int line)
 
template<class V >
bool FpCheckUnit (const V &v, const char *exp, const char *file, int line)
 
template<class TO , class FROM >
TO * DCastImp (TO *dmmy, FROM *p)
 同じ型へのキャスト 静的変換が可能な場合の If->Obj のキャスト
 
template<class TO , class FROM >
UTRef< TO > DCastImp (TO *dmmy, UTRef< FROM > p)
 
template<class T >
XCastPtr< T > & CastToXCastPtr (const T *ptr)
 
template<class T >
XCastPtr< T > & CastToXCastPtr (const UTRef< T > ptr)
 
FWSceneIf *SPR_CDECL CreateFWScene ()
 
FWSceneIf *SPR_CDECL CreateFWScene (const void *desc)
 
bool CompareVertexFormat (const GRVertexElement *e1, const GRVertexElement *e2)
 
bool approx (const double x, const double y)
 
bool approx (const Vec3d v1, const Vec3d v2)
 
void SPR_CDECL CRRegisterTypeDescs ()
 型情報登録
 

変数

const double M_PI = 3.14159265358979323846
 円周率π
 
const double fpCheckExpsilon = 1e-6
 
int colcounter
 
int s_methodSW
 
typedef DWORD dwBehavior
 
typedef void(SPR_CDECLGRDeviceD3DListenerFunc )()
 
typedef bool (SPR_CDECL *GRDeviceD3DConfirmDeviceFunc)(D3DCAPS9 *pCaps
 

説明

SprFWWin.h.

ObjectIfのAPIを介した表示・編集を行うクラス

合成: X(R1, r1) * X(R2, r2) = X(R2 * R1, r2 + R2 * r1); 逆: X(R, r)^-1 = X(R^T, -R^T * r);

転置: X(R, r)^T = [R, O; r% * R, R]; X(R, r)^T * V(f, t) = V(R * f, r % (R * f) + R * t); 転置の合成: X(R1, r1)^T * X(R2, r2)^T = (X(R2, r2) * X(R1, r1))^T = X(R1 * R2, r1 + R1 * r2)^T 転置の逆: (X(R, r)^T)^-1 = (X(R, r)^-1)^T

  • ウィンドウとGUIの提供
  • 実際に利用可能な機能は選択されているグラフィクスシステムに依存する
  • GUIコントロールの仕様はGLUIに基づいている.
    • コントロールの配置はFWColumn(横配置)とFWPanel(縦配置)を利用する