Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
C
 CalcAnglePlaneVec
 CalcApproximationCP_LSM, NURBS_Func
 CalcBSbasis
 CalcConstPitch
 CalcConstScallop
 CalcCubicEquation
 CalcCurvatureNurbsC
 CalcDeltaPtsOnNurbsC
 CalcDeltaPtsOnNurbsS
 CalcDiff2NurbsC
 CalcDiffBSbasis
 CalcDiffBSbasisN
 CalcDiffNNurbsC
 CalcDiffNNurbsS
 CalcDiffNurbsC, NURBS_Func
 CalcDiffNurbsSDenom
 CalcDiffNurbsSNumer
 CalcDiffuNormVecOnNurbsS
 CalcDiffuNurbsS
 CalcDiffvNormVecOnNurbsS
 CalcDiffvNurbsS
 CalcDistance
 CalcDistance2D
 CalcDistPtToPlane
 CalcEquation
 CalcEuclid
 CalcEuclid2D
 CalcExtGradCurve
 CalcExtremumNurbsC
 CalcExtSearchCurve
 CalcFaceArea
 CalcFaceNorm
 CalcGaussCurvature
 CalcGaussCurvatureNormVec
 CalcInnerProduct
 CalcInterDivPt
 CalcIntersecCurve
 CalcIntersecCurve3
 CalcIntersecIsparaCurveU
 CalcIntersecIsparaCurveV
 CalcIntersecPtNurbsPt
 CalcIntersecPtNurbsPtDescrete
 CalcIntersecPtsNurbsCLine, NURBS_Func
 CalcIntersecPtsNurbsCLineSeg, NURBS_Func
 CalcIntersecPtsNurbsCNurbsCParam
 CalcIntersecPtsNurbsSGeom
 CalcIntersecPtsNurbsSNurbsC
 CalcIntersecPtsNurbsSSearch
 CalcIntersecPtsOffsetPlaneGeom, NURBS_Func
 CalcIntersecPtsOffsetPlaneSearch
 CalcIntersecPtsPlaneGeom, NURBS_Func
 CalcIntersecPtsPlaneSearch
 CalcIntersecPtsPlaneSearch_Sub
 CalcIntersecPtsPlaneU
 CalcIntersecPtsPlaneU3
 CalcIntersecPtsPlaneV
 CalcIntersecPtsPlaneV3
 CalcLinearEquation
 CalcMeanCurvature
 CalcMeanCurvatureNormVec
 CalcNormalLine
 CalcNormVecFrom3Pts
 CalcNormVecOnNurbsS
 CalcNurbsCCoord
 CalcNurbsCCoords
 CalcNurbsCLength
 CalcNurbsSCoord
 CalcNurbsSCoords
 CalcOrthoProjection
 CalcOuterProduct
 CalcOuterProduct2D
 CalcParamLengthOnNurbsC
 CalcPolygonArea
 CalcQuadraticEquation
 CalcRotVec
 CalcRotVec2D
 CalcScalarTriProduct
 CalcTanVecOnNurbsC
 CalcuIntersecPtNurbsLine
 CalcUVvec
 CalcVecAngle
 CalcVecAngle2D
 CatchStringD, IGES_PARSER
 CatchStringI, IGES_PARSER
 CatCoord
 ChangeBackColor
 ChangeEnd
 ChangeEntityforNurbs
 ChangeHead
 ChangeKnot
 ChangeKnotVecRange
 changeRank, KODatUNO
 ChangeRank
 ChangeStatColor
 ChangeView_Proc
 ChangeViewDown
 ChangeViewLeft
 ChangeViewRight
 ChangeViewUp
 ChangeViewX
 ChangeViewXYZ
 ChangeViewY
 ChangeViewZ
 CheckClossedPoints
 CheckCurPos
 CheckCWforTrim
 CheckDegenracy
 CheckMag
 CheckRange
 CheckSection
 CheckTags
 CheckTheSameNurbsC, BODY
 CheckTheSamePoints
 CheckTheSamePoints2D
 CheckZero
 ChRatioNurbsC
 ChRatioNurbsS
 CirAToNurbsC_seg1, BODY
 CirAToNurbsC_seg2, BODY
 CirAToNurbsC_seg3, BODY
 CirAToNurbsC_seg4, BODY
 ClacIntersecPtsNurbsCLine
 ClacIntersecPtsNurbsCLineSeg
 ClacPolygonArea2D
 clear
 ClearSeldEntList
 ClickPicking
 closeEvent
 CmdChBkCol
 CmdChRank
 CmdChScale
 CmdChTolerance
 CmdCPView
 CmdExpand
 CmdFileOpen
 CmdGenNurbsCurve
 CmdGenNurbsSurface
 CmdGenRotSurf
 CmdGenSweepSurf
 CmdMap, KODatUNO
 CmdMeshInf
 CmdMoveBody
 CmdRotateBody
 CmdStack, KODatUNO
 CmdStackNow, KODatUNO
 CmdStackNum, KODatUNO
 CmdSurfInfo
 CmdUVdir
 CmdUVview
 CmdUVWire
 CmdVerInf
 Command
 ConnectNurbsC
 ConnectNurbsSU
 ConnectNurbsSV
 Console_Expose
 Console_KeyHook
 Console_Proc
 ConsoleCharNum, KODatUNO
 CoordToArray
 CoordToArray2D
 CopyBody
 CopyCoord
 CopyCoord2D
 CopyVector
 CPViewFlag, KODatUNO
 CtoQ
 CtrlKeyFlag, KODatUNO
 CurrentX, KODatUNO
 CurrentY, KODatUNO
double CalcAnglePlaneVec(Coord a,
Coord n)
平面と直線とのなす角を求める
double CalcAnglePlaneVec(Coord,
Coord)
平面と直線とのなす角を求める
void CalcApproximationCP_LSM(Coord *,
 Vector,
 Vector,
 int,
 int,
 int,
 int,
Coord *)
(private)最小2乗法で近似コントロールポイントを求める
double NURBS_Func::CalcBSbasis(double t,
double knot[],
int N,
int I,
int M)
Bスプライン基底関数を計算し、計算結果を返す
double CalcBSbasis( double,
double [],
 int,
 int,
 int)
Bスプライン基底関数を計算し、計算結果を返す
int NURBS_Func::CalcConstPitch(NURBSS *S,
NURBSC *C,
double t0,
double ds,
double *t,
int direct)
等ピッチ点を算出
int CalcConstPitch(NURBSS *,
NURBSC *,
 double,
 double,
double *,
 int)
等ピッチ点を算出
int NURBS_Func::CalcConstScallop(NURBSS *S,
NURBSC *C,
double t,
double g,
double *u,
double *v,
int direct)
等スキャロップ点を算出
int CalcConstScallop(NURBSS *,
NURBSC *,
 double,
 double,
double *,
double *,
 int)
等スキャロップ点を算出
int CalcCubicEquation(double *p,
double *ans)
3次方程式を解く
int CalcCubicEquation(double *,
double *)
3次方程式の解を求める
double NURBS_Func::CalcCurvatureNurbsC(NURBSC *C,
double t)
NURBS曲線の曲率を求める
double CalcCurvatureNurbsC(NURBSC *,
 double)
NURBS曲線の曲率を求める
int NURBS_Func::CalcDeltaPtsOnNurbsC(NURBSC *Nurb,
int D,
Coord *Pts)
指定した分割数でNURBS曲線上の座標値を出力する
int CalcDeltaPtsOnNurbsC(NURBSC *,
 int,
Coord *)
指定した分割数でNURBS曲線上の座標値を求める
int NURBS_Func::CalcDeltaPtsOnNurbsS(NURBSS *S,
int Du,
int Dv,
Coord **Pts)
指定した分割数でNURBS曲面上の座標値を求める
int CalcDeltaPtsOnNurbsS(NURBSS *,
 int,
 int,
Coord **)
指定した分割数でNURBS曲面上の座標値を求める
Coord NURBS_Func::CalcDiff2NurbsC(NURBSC *NurbsC,
double t)
NURBS曲線の2階微分係数を求める
Coord CalcDiff2NurbsC(NURBSC *,
 double)
NURBS曲線の2階微分係数を求める
double NURBS_Func::CalcDiffBSbasis(double t,
double knot[],
int N,
int I,
int M)
Bスプライン基底関数の1階微分係数を求める
double CalcDiffBSbasis( double,
double [],
 int,
 int,
 int)
Bスプライン基底関数の1階微分係数を求める
double NURBS_Func::CalcDiffBSbasisN(double t,
double knot[],
int N,
int I,
int M,
int Dn)
Bスプライン基底関数のN階微分係数を求める
double CalcDiffBSbasisN( double,
double [],
 int,
 int,
 int,
 int)
Bスプライン基底関数のN階微分係数を求める
Coord NURBS_Func::CalcDiffNNurbsC(NURBSC *NurbsC,
int r,
double t)
NURBS曲線のr階微分係数を求める
Coord CalcDiffNNurbsC(NURBSC *,
 int,
 double)
NURBS曲線のr階微分係数を求める
Coord NURBS_Func::CalcDiffNNurbsS(NURBSS *S,
int k,
int l,
double u,
double v)
NURBS曲面の各方向を任意階微分したときの微分係数を求める
Coord CalcDiffNNurbsS(NURBSS *,
 int,
 int,
 double,
 double)
NURBS曲面の各方向を任意階微分したときの微分係数を求める
Coord CalcDiffNurbsC(NURBSC *,
 double)
NURBS曲線の1階微分係数を求める
double NURBS_Func::CalcDiffNurbsSDenom(NURBSS *S,
int k,
int l,
double u,
double v)
(private)NURBS曲面分母の各方向を任意階微分したときの微分係数を求める
double CalcDiffNurbsSDenom(NURBSS *,
 int,
 int,
 double,
 double)
(private)NURBS曲面分母の各方向を任意階微分したときの微分係数を求める
Coord NURBS_Func::CalcDiffNurbsSNumer(NURBSS *S,
int k,
int l,
double u,
double v)
(private)NURBS曲面分子の各方向を任意階微分したときの微分係数を求める
Coord CalcDiffNurbsSNumer(NURBSS *,
 int,
 int,
 double,
 double)
(private)NURBS曲面分子の各方向を任意階微分したときの微分係数を求める
Coord NURBS_Func::CalcDiffuNormVecOnNurbsS(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)における法線ベクトルのu方向1階微分をもとめる Nu = Suu×Sv + Su×Suv
Coord CalcDiffuNormVecOnNurbsS(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)における法線ベクトルのu方向1階微分をもとめる
Coord NURBS_Func::CalcDiffuNurbsS(NURBSS *NurbsS,
double div_u,
double div_v)
NURBS曲面のu方向の1階微分係数を得る
Coord CalcDiffuNurbsS(NURBSS *,
 double,
 double)
NURBS曲面のu方向1階微分係数を求める
Coord NURBS_Func::CalcDiffvNormVecOnNurbsS(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)における法線ベクトルのv方向1階微分をもとめる Nv = Suv×Sv + Su×Svv
Coord CalcDiffvNormVecOnNurbsS(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)における法線ベクトルのv方向1階微分をもとめる
Coord NURBS_Func::CalcDiffvNurbsS(NURBSS *NurbsS,
double div_u,
double div_v)
NURBS曲面のv方向の1階微分係数を得る
Coord CalcDiffvNurbsS(NURBSS *,
 double,
 double)
NURBS曲面のv方向1階微分係数を求める
double CalcDistance(Coord a,
Coord b)
2点間のユークリッド距離を求める
double CalcDistance(Coord,
Coord)
2点間のユークリッド距離を求める
double CalcDistance2D(Coord a,
Coord b)
2次元座標上での2点間のユークリッド距離を算出
double CalcDistance2D(Coord,
Coord)
2次元座標上での2点間のユークリッド距離を算出 (2D Ver.)
double CalcDistPtToPlane(Coord Pt,
Coord P0,
Coord N)
任意の点から任意の平面までの距離を求める
double CalcDistPtToPlane(Coord,
Coord,
Coord)
任意の点から任意の平面までの距離を求める
int NURBS_Func::CalcEquation(double *a,
double *t,
int M)
(private)CalcIntersecCurve3(), CalcIntersecPtsPlaneU/V3()のサブ関数.3次方程式までを解く
int CalcEquation(double *,
double *,
 int)
(private)3次方程式までを判別して解く
double CalcEuclid(Coord a)
ユークリッド距離を算出
double CalcEuclid(Coord)
ユークリッド距離をもとめる
double CalcEuclid2D(double a,
double b)
2次元ユークリッド距離を算出
double CalcEuclid2D(double,
double)
ユークリッド距離をもとめる (2D Ver.)
int NURBS_Func::CalcExtGradCurve(NURBSS *S,
Coord n,
Coord pt,
double ds,
NURBSC *C1,
NURBSC *C2)
(準備中)極値傾斜線を得る
int NURBS_Func::CalcExtremumNurbsC(NURBSC *C,
Coord nf,
double *pt,
int ptnum)
NURBS曲線の指定した方向における極値の座標値を得る
int CalcExtremumNurbsC(NURBSC *,
 Coord,
double *,
 int)
NURBS曲線の指定した方向における極値の座標値を得る
int NURBS_Func::CalcExtSearchCurve(NURBSS *S,
Coord n,
Coord pt,
double ds,
NURBSC *C1,
NURBSC *C2)
(準備中)極値探索線を得る
int MESH::CalcFaceArea(HEface *f)
指定した面fの面積を求め、f->areaにセットする
int CalcFaceArea(HEface *)
指定した面fの面積を求め、f->areaにセットする
int MESH::CalcFaceNorm(HEface *f)
指定した面fの法線ベクトルを求め、f->normにセットする
int CalcFaceNorm(HEface *)
指定した面fの法線ベクトルを求め、f->normにセットする
double NURBS_Func::CalcGaussCurvature(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)におけるガウス曲率を求める
double CalcGaussCurvature(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)におけるガウス曲率を求める
Coord NURBS_Func::CalcGaussCurvatureNormVec(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)におけるガウス曲率法線ベクトルをもとめる
Coord CalcGaussCurvatureNormVec(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)におけるガウス曲率法線ベクトルを求める
double CalcInnerProduct(Coord a,
Coord b)
内積を求める
double CalcInnerProduct(Coord,
Coord)
内積を求める
Coord CalcInterDivPt(Coord p,
Coord q,
double t)
2点p(t=0),q(t=1)をt(0~1)で内分したときの点の座標をもとめる
Coord CalcInterDivPt(Coord,
Coord,
double)
2点間の内分点を求める
int NURBS_Func::CalcIntersecCurve(NURBSC *nurb,
Coord pt,
Coord nvec,
int Divnum,
double *ans,
int ans_size,
int LoD)
NURBS曲線と平面との交点を求める(ニュートン法) F(t) = nvec・(C(t)-pt) = 0をニュートン法を用いて求める. 交点は最大で(M-1)*(K-M+1)点得られる.
int CalcIntersecCurve(NURBSC *,
 Coord,
 Coord,
 int,
double *,
 int,
 int)
NURBS曲線と平面との交点を求める(ニュートン法)
int NURBS_Func::CalcIntersecCurve3(NURBSC *nurb,
Coord pt,
Coord nvec,
double *ans,
int ans_size)
NURBS曲線と平面との交点を求める(3次まで対応) 交点は最大で(M-1)*(K-M+1)点得られる.
int CalcIntersecCurve3(NURBSC *,
 Coord,
 Coord,
double *,
 int)
3次以下のNURBS曲線と平面との交点を求める
int NURBS_Func::CalcIntersecIsparaCurveU(NURBSS *nurb,
double V,
Coord pt,
Coord nvec,
int Divnum,
double *ans,
int ans_size)
NURBS曲面のU方向アイソパラ曲線(Vパラメータを固定)と平面との交点を求める(ニュートン法) F(t) = nvec・(C(t)-pt) = 0をニュートン法を用いて求める 交点は最大で(M-1)*(K-M+1)点得られる.
int CalcIntersecIsparaCurveU(NURBSS *,
 double,
 Coord,
 Coord,
 int,
double *,
 int)
u方向アイソパラ曲線と平面との交点を求める(ニュートン法)
int NURBS_Func::CalcIntersecIsparaCurveV(NURBSS *nurb,
double U,
Coord pt,
Coord nvec,
int Divnum,
double *ans,
int ans_size)
NURBS曲面のV方向アイソパラ曲線(Uパラメータを固定)と平面との交点を求める(ニュートン法) F(t) = nvec・(C(t)-pt) = 0をニュートン法を用いて求める 交点は最大で(M-1)*(K-M+1)点得られる.
int CalcIntersecIsparaCurveV(NURBSS *,
 double,
 Coord,
 Coord,
 int,
double *,
 int)
v方向アイソパラ曲線と平面との交点を求める(ニュートン法)
int NURBS_Func::CalcIntersecPtNurbsPt(NURBSS *S,
Coord P,
int Divnum,
int LoD,
Coord *Q)
空間上の1点PからNURBS曲面S上の最近傍点Qを求める(ニュートン法)
int CalcIntersecPtNurbsPt(NURBSS *,
 Coord,
 int,
 int,
Coord *)
空間上の1点からNURBS曲面上の最近傍点を求める(ニュートン法)
void NURBS_Func::CalcIntersecPtNurbsPtDescrete(NURBSS *S,
Coord P,
int Divnum,
int LoD,
double Us,
double Ue,
double Vs,
double Ve,
Coord *Q)
空間上の1点PからNURBS曲面S上の最近傍点Qを求める(離散的)
void CalcIntersecPtNurbsPtDescrete(NURBSS *,
Coord ,
int ,
int ,
double ,
double ,
double ,
double ,
Coord *)
空間上の1点からNURBS曲面上の最近傍点を求める(離散的)
2次元NURBS曲線と直線との交点を求める
2次元NURBS曲線と線分との交点を求める
int NURBS_Func::CalcIntersecPtsNurbsCNurbsCParam(NURBSC *NurbA,
NURBSC *NurbB,
int Divnum,
Coord *ans,
int ans_size)
(x,y)平面上のNURBS曲線同士の交点を求める(ニュートン法)
int CalcIntersecPtsNurbsCNurbsCParam(NURBSC *,
NURBSC *,
 int,
Coord *,
 int)
2次元NURBS曲線同士の交点を求める
int NURBS_Func::CalcIntersecPtsNurbsSGeom(NURBSS *nurbR,
NURBSS *nurbS,
int u_divnum,
int v_divnum,
Coord *ansR,
Coord *ansS,
int ans_size)
NURBS曲面S(u,v)とNURBS曲面R(w,t)の交線(交点群)を幾何学的に求める(補助平面を用いた解法)
int CalcIntersecPtsNurbsSGeom(NURBSS *,
NURBSS *,
 int,
 int,
Coord *,
Coord *,
 int)
NURBS曲面同士の交線上の点を幾何学的にいくつか求める
int NURBS_Func::CalcIntersecPtsNurbsSNurbsC(NURBSS *NurbsS,
NURBSC *NurbsC,
int Divnum,
Coord *ans,
int ans_size)
NURBS曲面とNURBS曲線との交点群を交線追跡法で求める
int CalcIntersecPtsNurbsSNurbsC(NURBSS *,
NURBSC *,
 int,
Coord *,
 int)
NURBS曲面とNURBS曲線との交点を求める(ニュートン法)
int NURBS_Func::CalcIntersecPtsNurbsSSearch(NURBSS *nurbR,
NURBSS *nurbS,
int div,
double ds,
Coord *ansR,
Coord *ansS,
int ans_size)
NURBS曲面S(u,v)とNURBS曲面R(w,t)の交線(交点群)を交点追跡法にて求める
int CalcIntersecPtsNurbsSSearch(NURBSS *,
NURBSS *,
 int,
 double,
Coord *,
Coord *,
 int)
NURBS曲面同士の交線(交点群)を交線追跡法で求める
int CalcIntersecPtsOffsetPlaneGeom(NURBSS *,
 double,
 Coord,
 Coord,
 int,
Coord *,
 int)
オフセットNURBS曲面と平面と交点追跡用初期点を得る(補助平面を用いた方法)(準備中)
int NURBS_Func::CalcIntersecPtsOffsetPlaneSearch(NURBSS *nurb,
double os,
Coord pt,
Coord nvec,
double ds,
int initdivnum,
Coord *ans,
int ans_size)
オフセットNURBS曲面と平面との交点群を交点追跡法にて求める
int CalcIntersecPtsOffsetPlaneSearch(NURBSS *,
 double,
 Coord,
 Coord,
 double,
 int,
Coord *,
 int)
オフセットNURBS曲面と平面との交点群を交線追跡法で求める(準備中)
int CalcIntersecPtsPlaneGeom(NURBSS *,
 Coord,
 Coord,
 int,
 int,
Coord *,
 int)
NURBS曲面と平面と交点追跡用初期点を得る(補助平面を用いた方法)
int NURBS_Func::CalcIntersecPtsPlaneSearch(NURBSS *nurb,
Coord pt,
Coord nvec,
double ds,
int initdivnum,
Coord *ans,
int ans_size,
int method)
NURBS曲面と平面との交点群を交点追跡法にて求める
int CalcIntersecPtsPlaneSearch(NURBSS *,
 Coord,
 Coord,
 double,
 int,
Coord *,
 int,
 int)
NURBS曲面と平面との交点群を交線追跡法で求める
Coord NURBS_Func::CalcIntersecPtsPlaneSearch_Sub(NURBSS *nurb,
double u,
double v,
Coord pt,
Coord nvec)
(private)平面とNURBS曲面との交点群を求める関数CalcIntersecPtsPlaneSearch()のサブ関数. 面から飛び出した(u,v)を参考に面のエッジ部における交点(new_u,new_v)を得る
Coord CalcIntersecPtsPlaneSearch_Sub(NURBSS *,
 double,
 double,
 Coord,
 Coord)
(private)面から飛び出した(u,v)を参考に面のエッジ部(new_u,new_v)を得る
int NURBS_Func::CalcIntersecPtsPlaneU(NURBSS *nurbss,
Coord pt,
Coord nvec,
int u_divnum,
Coord *ans,
int ans_size)
U方向のアイソパラ曲線を指定した分割数で生成し,各曲線とNURBS曲面との交点を算出する
int CalcIntersecPtsPlaneU(NURBSS *,
 Coord,
 Coord,
 int,
Coord *,
 int)
U方向のアイソパラ曲線を指定した分割数で生成し,各曲線とNURBS曲面との交点を算出する
int NURBS_Func::CalcIntersecPtsPlaneU3(NURBSS *nurb,
Coord pt,
Coord nvec,
int u_divnum,
Coord *ans,
int ans_size)
3次以下のNURBS曲面と平面との交点群を代数解法にて求める(uパラメータ分割)
int CalcIntersecPtsPlaneU3(NURBSS *,
 Coord,
 Coord,
 int,
Coord *,
 int)
V方向のアイソパラ曲線を指定した分割数で生成し,各3次以下の曲線とNURBS曲面との交点を代数計算で算出する
int NURBS_Func::CalcIntersecPtsPlaneV(NURBSS *nurbss,
Coord pt,
Coord nvec,
int v_divnum,
Coord *ans,
int ans_size)
V方向のアイソパラ曲線を指定した分割数で生成し,各曲線とNURBS曲面との交点を算出する
int CalcIntersecPtsPlaneV(NURBSS *,
 Coord,
 Coord,
 int,
Coord *,
 int)
V方向のアイソパラ曲線を指定した分割数で生成し,各曲線とNURBS曲面との交点を算出する
int NURBS_Func::CalcIntersecPtsPlaneV3(NURBSS *nurb,
Coord pt,
Coord nvec,
int v_divnum,
Coord *ans,
int ans_size)
3次以下のNURBS曲面と平面との交点群を代数解法にて求める(vパラメータ分割)
int CalcIntersecPtsPlaneV3(NURBSS *,
 Coord,
 Coord,
 int,
Coord *,
 int)
V方向のアイソパラ曲線を指定した分割数で生成し,各3次以下の曲線とNURBS曲面との交点を代数計算で算出する
int CalcLinearEquation(double *a,
double *ans)
1次方程式を解く
int CalcLinearEquation(double *,
double *)
1次方程式の解を求める
double NURBS_Func::CalcMeanCurvature(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)における平均曲率を求める
double CalcMeanCurvature(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)における平均曲率を求める
Coord NURBS_Func::CalcMeanCurvatureNormVec(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)における平均曲率法線ベクトルをもとめる
Coord CalcMeanCurvatureNormVec(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)における平均曲率法線ベクトルを求める
Coord CalcNormalLine(Coord P,
Coord A,
Coord u)
任意の点Pから任意の直線(点Aを通り単位ベクトルuの方向を持つ)へ下ろした点を求める
Coord CalcNormalLine(Coord,
Coord,
Coord)
任意の点から任意の直線へ下ろした点を求める
Coord CalcNormVecFrom3Pts(Coord p1,
Coord p2,
Coord p3)
空間上の3点からなる平面の法線ベクトルを求める
Coord CalcNormVecFrom3Pts(Coord,
Coord,
Coord)
空間上の3点からなる平面の法線ベクトルを求める
Coord NURBS_Func::CalcNormVecOnNurbsS(NURBSS *nurb,
double u,
double v)
NURBS曲面上の(u,v)における法線ベクトルをもとめる
Coord CalcNormVecOnNurbsS(NURBSS *,
 double,
 double)
NURBS曲面上の(u,v)における法線ベクトルをもとめる
Coord NURBS_Func::CalcNurbsCCoord(NURBSC *NurbsC,
double t)
指定したノットtでのNURBS曲線の座標値を求める
Coord CalcNurbsCCoord(NURBSC *,
 double)
指定したtでのNURBS曲線の座標値を求める
void NURBS_Func::CalcNurbsCCoords(NURBSC *NurbsC,
int Ptnum,
double *T,
Coord *Pt)
指定したノットt群でのNURBS曲線の座標値を求める
void CalcNurbsCCoords(NURBSC *,
 int,
double *,
Coord *)
指定したt群でのNURBS曲線の座標値群を求める
double NURBS_Func::CalcNurbsCLength(NURBSC *Nurb,
double a,
double b)
NURBS曲線C(t)の指定パラメータ区間[a,b]の線分長Lを求める
double CalcNurbsCLength(NURBSC *)
NURBS曲線の線分長を求める
Coord NURBS_Func::CalcNurbsSCoord(NURBSS *NurbsS,
double div_u,
double div_v)
指定したノットu,vでのNURBS曲面の座標値を求める
Coord CalcNurbsSCoord(NURBSS *,
 double,
 double)
指定したu,vでのNURBS曲面の座標点を求める
void NURBS_Func::CalcNurbsSCoords(NURBSS *NurbsS,
int Ptnum,
Coord *UV,
Coord *Pt)
指定したノットu,v群でのNURBS曲面の座標値群を求める
void CalcNurbsSCoords(NURBSS *,
 int,
Coord *,
Coord *)
指定したu,v群でのNURBS曲面の座標値群を求める
Coord CalcOrthoProjection(Coord p,
Coord n,
Coord q)
任意の点を任意の平面へ正射影する
Coord CalcOrthoProjection(Coord,
Coord,
Coord)
任意の点を任意の平面へ正射影する
Coord CalcOuterProduct(Coord a,
Coord b)
外積を求める
Coord CalcOuterProduct(Coord,
Coord)
外積を求める
double CalcOuterProduct2D(Coord a,
Coord b)
外積を求める (2D Ver.)
double CalcOuterProduct2D(Coord,
Coord)
外積を求める (2D Ver.)
double NURBS_Func::CalcParamLengthOnNurbsC(NURBSC *C,
double L,
double Init_t)
NURBS曲線において一端からの指定距離におけるパラメータ値を返す
double CalcParamLengthOnNurbsC(NURBSC *,
 double,
 double)
NURBS曲線において一端からの指定距離におけるパラメータ値を返す
double CalcPolygonArea(Coord p[],
int Vnum)
空間上の多角形の面積を得る
int CalcQuadraticEquation(double *a,
double *ans)
2次方程式を解く
int CalcQuadraticEquation(double *,
double *)
2次方程式の解を求める
Coord CalcRotVec(Coord a,
Coord e,
double ang)
任意のベクトルを原点を通る任意軸周りに回転させたベクトルを求める
Coord CalcRotVec(Coord,
Coord,
double)
任意のベクトルを原点を通る任意軸周りに回転させたベクトルを求める(3D平面)
Coord CalcRotVec2D(Coord a,
double angle)
任意のベクトルを回転させたベクトルを求める(2D平面)
Coord CalcRotVec2D(Coord,
double)
任意のベクトルを回転させたベクトルを求める(2D平面)
double CalcScalarTriProduct(Coord a,
Coord b,
Coord c)
スカラー三重積を求める
double CalcScalarTriProduct(Coord,
Coord,
Coord)
スカラー三重積を求める
Coord NURBS_Func::CalcTanVecOnNurbsC(NURBSC *C,
double t)
NURBS曲線上のtにおける単位接ベクトルをもとめる
Coord CalcTanVecOnNurbsC(NURBSC *,
 double)
NURBS曲線上のtにおける単位接ベクトルをもとめる
int NURBS_Func::CalcuIntersecPtNurbsLine(NURBSS *Nurb,
Coord r,
Coord p,
int Divnum,
Coord *ans,
int anssize,
int LoD)
NURBS曲面と直線の交点を算出
int CalcuIntersecPtNurbsLine(NURBSS *,
 Coord,
 Coord,
 int,
Coord *,
 int,
 int)
NURBS曲面と直線の交点を算出
int DXF_PARSER::CalcUVvec(CIRA *Cira)
CIRAのUV直交座標を設定する
int CalcUVvec(CIRA *)
(private)CIRAのUV直交座標を設定する
double CalcVecAngle(Coord a,
Coord b)
2つのベクトルのなす角を求める(返値はrad)
double CalcVecAngle(Coord,
Coord)
2つのベクトルのなす角を求める
double CalcVecAngle2D(Coord a,
Coord b)
2つのベクトルのなす角を求める(2D平面)
double CalcVecAngle2D(Coord,
Coord)
2つのベクトルのなす角を求める (2D Ver.)
double CatchStringD(char **)
カンマまでの数値を読み込んで返す(double)
int CatchStringI(char **)
カンマまでの数値を読み込んで返す(int)
int CatCoord(Coord a[],
Coord b[],
int alim,
int anum,
int bnum)
ある座標値配列の後ろに新たな座標値配列を繋げる
int CatCoord(Coord [],
Coord [],
 int,
 int,
 int)
ある配列の後ろに新たな配列を繋げる
void KODatUNO::ChangeBackColor(double rgb[3])
背景の色を変更する
void ChangeBackColor(double [])
背景の色を変更する
void KODlistData::ChangeEnd(Data *d)
リストの末尾を指定したデータに変更する
void ChangeEnd(Data *)
リストの末尾を変更
int DXF_PARSER::ChangeEntityforNurbs(BODY *body)
円,直線エンティティをNURBSに変換
int ChangeEntityforNurbs(BODY *)
(private)NURBS曲線以外のエンティティをNURBS曲線に変換
int ChangeEntityforNurbs(DirectoryParam *,
 BODY,
 int)
エンティティを全てNURBSへ変更する
void KODlistData::ChangeHead(Data *d)
リストの先頭を指定したデータに変更する
void ChangeHead(Data *)
リストの先頭を変更
double IGES_PARSER::ChangeKnot(double Knot,
double M_,
double K_,
double val)
ノットベクトルの範囲変更関数ChangeKnotVecRange()のサブ関数
double ChangeKnot(double ,
double ,
 double,
 double)
ノットベクトルの正規化sub2
int IGES_PARSER::ChangeKnotVecRange(double Range[],
double Knot[],
int N,
int M,
int K,
double val)
ノットベクトルの範囲を0~valにする.
int ChangeKnotVecRange(double [],
double [],
 int,
 int,
 int,
 double)
ノットベクトルの正規化sub1
void ChangeKnotVecRange(Vector,
int,
int,
int,
double,
double)
ノットベクトルのパラメータ定義域を変更する
選択されている曲面のRankを変更する
void KODatUNO::ChangeRank(int Newrank[2])
選択されている曲面のRankを変更する
void BODY::ChangeStatColor(float *col,
float r,
float g,
float b,
float t)
エンティティのステータスで定義されている色を変更
void ChangeStatColor(float *,
 float,
 float,
 float,
 float)
エンティティのステータスで定義されている色を変更
void ChangeView_Proc(WSCbase *object)
視点切換ボタンのプロシージャ
bool KODatUNO::ChangeViewDown()
Ctrl + 下矢印キーで15degづつBODYを回転させる
bool ChangeViewDown()
Ctrl+下矢印キーで15degづつBODYを回転させる
bool KODatUNO::ChangeViewLeft()
Ctrl + 左矢印キーで15degづつBODYを回転させる
bool ChangeViewLeft()
Ctrl+左矢印キーで15degづつBODYを回転させる
bool KODatUNO::ChangeViewRight()
Ctrl + 右矢印キーで15degづつBODYを回転させる
bool ChangeViewRight()
Ctrl+右矢印キーで15degづつBODYを回転させる
bool KODatUNO::ChangeViewUp()
Ctrl + 上矢印キーで15degづつBODYを回転させる
bool ChangeViewUp()
Ctrl+上矢印キーで15degづつBODYを回転させる
void KODatUNO::ChangeViewX()
X軸上からの視点に切り替える
void ChangeViewX()
X軸上の視点に切り替える
void KODatUNO::ChangeViewXYZ()
鳥瞰視点に切り替える
void ChangeViewXYZ()
鳥瞰視点に切り替える
void KODatUNO::ChangeViewY()
Y軸上からの視点に切り替える
void ChangeViewY()
Y軸上の視点に切り替える
void KODatUNO::ChangeViewZ()
Z軸上からの視点に切り替える
void ChangeViewZ()
Z軸上の視点に切り替える
int NURBS_Func::CheckClossedPoints(Coord A,
Coord B,
Coord P)
(private)指定した点が他の2点を対角とする立方体の中に存在するかを調べる
int CheckClossedPoints(Coord,
Coord,
Coord)
(private)指定した点が他の2点を対角とする立方体の中に存在するかを調べる
bool QtConsole::CheckCurPos()
カーソルの現在位置が最後の”>”以降にあるのかを調べる
bool CheckCurPos()
カーソルの現在位置が最後の”>”以降にあるのかを調べる
int IGES_PARSER::CheckCWforTrim(BODY *body)
トリムに使われている複合曲線からなる多角形が時計回りか反時計回りかを調べ、外周トリムは反時計回り、内周トリムは時計周りになるように変更する
int CheckCWforTrim(BODY *)
トリムに使われている複合曲線からなる多角形が時計回りか反時計回りかを調べ、外周トリムは反時計回り、内周トリムは時計周りになるように変更する
int IGES_PARSER::CheckDegenracy(BODY *body)
縮退チェック
int CheckDegenracy(BODY *)
縮退(2Dパラメトリック曲線の始点と終点が一致しているか)のチェック
int CheckMag(double val1,
double val2,
int flag)
2つの値の大小比較
int CheckMag(double,
double,
int)
2つの値の大小比較
int CheckRange(double low,
double up,
double val,
int flag)
指定した値が指定した範囲内であるかをチェック
int CheckRange(double,
double,
double,
int)
指定した値が指定した範囲内であるかをチェック
int DXF_PARSER::CheckSection(char *str)
セクション判別
int CheckSection(char *)
(private)セクション判別
int VRML_PARSER::CheckTags(char buf[])
タグ解析
int CheckTags(char [])
(private)タグ解析
NURBSC *CheckTheSameNurbsC(NURBSC *,
 int,
NURBSC *)
(private)同一のNURBS曲線を探索
int CheckTheSamePoints(Coord *P,
int N)
同一点を除去する
int CheckTheSamePoints(Coord *,
 int)
同一点を除去する
int CheckTheSamePoints2D(Coord *P,
int N)
2次元平面内の同一点を除去する (座標値はCoordのxとyで与える)
int CheckTheSamePoints2D(Coord *,
 int)
2D平面内の同一点を除去する
int CheckZero(double val,
int flag)
値がAPPROX_ZEROの範囲で0であるかチェック
int CheckZero(double,
int)
値がAPPROX_ZEROの範囲で0であるかチェック
void NURBS_Func::ChRatioNurbsC(NURBSC *nurbs,
Coord ratio)
NURBS曲線の倍率を変更する
void ChRatioNurbsC(NURBSC *,
 Coord)
NURBS曲線の倍率を変更する
void NURBS_Func::ChRatioNurbsS(NURBSS *nurbs,
Coord ratio)
NURBS曲面の倍率を変更する
void ChRatioNurbsS(NURBSS *,
 Coord)
NURBS曲面の倍率を変更する
int CirAToNurbsC_seg1( int,
 int,
Coord [],
 double)
(private)円・円弧エンティティが1セグメントの場合
int CirAToNurbsC_seg2( int,
 int,
Coord [],
 double)
(private)円・円弧エンティティが2セグメントの場合
int CirAToNurbsC_seg3( int,
 int,
Coord [],
 double)
(private)円・円弧エンティティが3セグメントの場合
int CirAToNurbsC_seg4( int,
 int,
Coord [],
 double)
(private)円・円弧エンティティが4セグメントの場合
int NURBS_Func::ClacIntersecPtsNurbsCLine(NURBSC *C,
Coord P,
Coord r,
double *t1,
double *t2)
2次元NURBS曲線と直線との交点を求める
int NURBS_Func::ClacIntersecPtsNurbsCLineSeg(NURBSC *C,
Coord P,
Coord r,
double ts,
double te,
double *t1,
double *t2)
2次元NURBS曲線と線分との交点を求める
double ClacPolygonArea2D(Coord p[],
int Vnum)
2D平面上の多角形の符号付き面積を得る(CCW:正,CW:負)
double ClacPolygonArea2D(Coord [],
 int)
2D平面上の多角形の符号付き面積を得る
int KODlistData::clear()
自身の消滅
int clear()
自身の消滅
int clear()
メッシュ全消去
void KODatUNO::ClearSeldEntList()
セレクションリスト及びOBJECTを初期化する
void ClearSeldEntList()
(Private)セレクションリスト及びOBJECTを初期化する
void KODatUNO::ClickPicking(GLuint SelectBuf[],
int hits)
クリックによるマウスピッキングをする
void ClickPicking(GLuint SelectBuf[],
int hits)
(Private)クリックによるマウスピッキングをする
void QtMainWindow::closeEvent(QCloseEvent *event)
KodatunoGUIクローズ時のイベント
virtual void closeEvent(QCloseEvent *event)
KodatunoGUIクローズ時のイベント.
void CmdChBkCol(int argc,
char *argv[])
コマンド(背景色変更)
void CmdChBkCol( int,
char *[])
コマンド(背景色変更)
void CmdChRank(int argc,
char *argv[])
コマンド(Nurbs Rankの変更)
void CmdChRank( int,
char *[])
コマンド(NURBS Rankの変更)
void CmdChScale(int argc,
char *argv[])
コマンド(スケール変更)
void CmdChScale( int,
char *[])
コマンド(スケール変更)
void CmdChTolerance(int argc,
char *argv[])
コマンド(トレランス変更)
void CmdCPView(int argc,
char *argv[])
コマンド(コントロールポイント描画)
void CmdCPView(int ,
char *[])
コマンド(コントロールポイント描画)
void CmdExpand(int argc,
char *argv[])
コマンド(BODYの拡大)
void CmdExpand( int,
char *[])
コマンド(BODYの拡大)
void CmdFileOpen(int argc,
char *argv[])
コマンド(ファイルオープン)
void CmdFileOpen( int,
char *[])
コマンド(ファイルオープン)
void CmdGenNurbsCurve(int argc,
char *argv[])
コマンド(Nurbs曲線生成)
void CmdGenNurbsCurve( int,
char *[])
コマンド(Nurbs曲線生成)
void CmdGenNurbsSurface(int argc,
char *argv[])
コマンド(Nurbs曲面生成)
void CmdGenNurbsSurface( int,
char *[])
コマンド(トレランス変更)
void CmdGenRotSurf(int argc,
char *argv[])
コマンド(回転サーフェス生成)
void CmdGenRotSurf( int,
char *[])
コマンド(回転サーフェス生成)
void CmdGenSweepSurf(int argc,
char *argv[])
コマンド(スイープサーフェス生成)
void CmdGenSweepSurf( int,
char *[])
コマンド(スイープサーフェス生成)
CommandMap CmdMap[COMMANDNUMMAX]
(Private)コマンドマップ
void CmdMeshInf(int argc,
char *argv[])
コマンド(Mesh情報出力)
void CmdMeshInf( int,
char *[])
コマンド(Mesh情報出力)
void CmdMoveBody(int argc,
char *argv[])
コマンド(BODYの平行移動)
void CmdMoveBody( int,
char *[])
コマンド(BODYの変更移動)
void CmdRotateBody(int argc,
char *argv[])
コマンド(BODYの回転)
void CmdRotateBody(int ,
char *[])
コマンド(BODYの回転)
char CmdStack[HISTORYNUMMAX][256]
(Private)コマンド履歴
int CmdStackNow
(Private)背景色
int CmdStackNum
(Private)コマンド履歴数
void CmdSurfInfo(int argc,
char *argv[])
コマンド(曲面情報を出力)
void CmdSurfInfo( int,
char *[])
コマンド(曲面情報を出力)
void CmdUVdir(int argc,
char *argv[])
コマンド(U,Vの方向を描画)
void CmdUVdir( int,
char *[])
コマンド(U,Vの方向を描画)
void CmdUVview(int argc,
char *argv[])
コマンド(UV平面上のトリム情報をX,Y平面に描画)
void CmdUVWire(int argc,
char *argv[])
コマンド(UVワイヤーフレーム表示)
void CmdUVWire( int,
char *[])
コマンド(UVワイヤーフレーム表示)
void CmdVerInf(int argc,
char *argv[])
コマンド(バージョン情報出力)
void CmdVerInf( int,
char *[])
コマンド(バージョン情報出力)
void USER::Command(BODYList *BodyList,
OBJECTList *ObjList,
int pickcount,
int CmdNo,
int argc,
char *argv[])
Userコマンドを実行
void Command(BODYList *,
OBJECTList *,
 int,
 int,
 int,
char *[])
Userコマンドの実行
int NURBS_Func::ConnectNurbsC(NURBSC *C1,
NURBSC *C2,
NURBSC *C_)
2本のNURBS曲線を連結する
int ConnectNurbsC(NURBSC *,
NURBSC *,
NURBSC *)
NURBS曲線の連結
int NURBS_Func::ConnectNurbsSU(NURBSS *S1,
NURBSS *S2,
NURBSS *S_)
2枚のNURBS曲面を連結する(U方向に長くなる)(S1_U1とS2_U0を連結)
int ConnectNurbsSU(NURBSS *,
NURBSS *,
NURBSS *)
2枚のNURBS曲面を連結する(U方向に長くなる)(S1_U1とS2_U0を連結)
int NURBS_Func::ConnectNurbsSV(NURBSS *S1,
NURBSS *S2,
NURBSS *S_)
2枚のNURBS曲面を連結する(V方向に長くなる)(S1_V1とS2_V0を連結)
int ConnectNurbsSV(NURBSS *,
NURBSS *,
NURBSS *)
2枚のNURBS曲面を連結する(V方向に長くなる)(S1_V1とS2_V0を連結)
void Console_Expose(WSCbase *object)
再描画時の処理
void Console_KeyHook(WSCbase *object)
入力されたキーをフックし,キー入力を制限する(コンソール風なテキストフォームにする)
void Console_Proc(WSCbase *object)
テキストフォームのプロシージャ
int ConsoleCharNum
(Private)コンソールに入力されている全ての文字数を保持
void CoordToArray(Coord a,
double b[3])
Coordをdouble配列に代入
void CoordToArray( Coord,
double [])
Coordをdouble配列に代入
void CoordToArray2D(Coord a,
double b[2])
Coordをdouble配列に代入(2D Ver.)
void CoordToArray2D( Coord,
double [])
Coordをdouble配列に代入
void BODY::CopyBody(BODY *body)
他のBODYを自身にコピーする
void CopyCoord(Coord *a,
int n,
Coord *b)
座標値群のコピー(b<--a)
void CopyCoord(Coord *,
 int,
Coord *)
座標値群をコピー
void CopyCoord2D(Coord *a,
int n,
Coord *b)
座標値群のコピー(b<--a)(2D Ver.)
void CopyCoord2D(Coord *,
 int,
Coord *)
座標値群をコピー (2D Ver.)
void CopyVector(Vector a,
int n,
Vector b)
ベクトルのコピー(aベクトルをbベクトルへ代入)
void CopyVector(Vector,
int,
Vector)
ベクトルのコピー
int CPViewFlag
コントロールポイント描画フラグ
Quat QUATERNION::CtoQ(Coord a)
クォータニオン実部を0、虚部をCoordとしてクォータニオンを生成
Quat CtoQ(Coord)
クォータニオン実部を0、虚部をCoordとしてクォータニオンを生成
int CtrlKeyFlag
(Private)Ctrlキーを押したことを示すフラグ
int CurrentX
(Private)ドラッグ中の位置X
int CurrentY
(Private)ドラッグ中の位置Y