My_OB02タグのスケッチ
My_OB02タグのスケッチのスケッチは以下となります。
class My_OB02 extends My_OB
{
void OB02()//ガードレール
{
OB02_01();//ガードレールポール
OB02_02();//基礎
OB02_03();//ガード
OB02_04();//固定金具
//void X_M20Nut_XYZ(float X,float Y,float Z)
X_M20Nut_XYZ(-65.15,-600,0);
X_M20Nut_XYZ(69.65,-600,0);
X_M16Nut_XYZ(99,-600,100);
X_M16Nut_XYZ(77.6,-600,100);
X_M16Nut_XYZ(99,-600,-100);
X_M16Nut_XYZ(77.6,-600,-100);
}
void OB02_01()//ガードレールポール
{
pushMatrix();
rotateX(90*PI/180);
//void Z_Parasol_Z(int Sn,float R,float A,float Z)//Z指定パラソル面
Z_Parasol_Z(4,145,24.8,555);//パラソル面
//void Z_Bar_Z(float r,float L,float Z)//Z指定丸棒
Z_Bar_Z(60,12,680);
Z_Bar_Z(57.15,1075,137.5);
popMatrix();
}
void OB02_02()//基礎
{
fill(55, 055,0,50);
pushMatrix();
translate(0,200,0);
box(400,400,400);
popMatrix();
fill(255, 255, 255);
}
void OB02_03()//ガード
{
int Pn=17;//ポイント数
float[] X={107.3,105,137,137,88.2,88.2,137,137,105,107.3,140.2,140.2,91.4,91.4,140.2,140.2,107.3};
float[] Y={175,172.3,140,79.5,31.3,-31.3,-79.5,-140,-172.3,-175,-141.4,-78.2,-30,30,78.2,141.4,175};
float L=600;
pushMatrix();
translate(0,-600,0);
//void Z_Polyon_Plate(int Pn,float X[],float Y[],float L)//多角形板
Z_Polyon_Plate(Pn,X,Y,L);
popMatrix();
}
void OB02_04()//固定金具
{
int Pn=23;//ポイント数
float[] X={0,19.6,36.8,54.5,54.5,150,150,50,50,39,21.2,0,-21.2,-39,-50,-50,-150,-150,-54.5,-54.5,-36.8,-19.6,0};
float[] Y={57.2,53.7,43.7,43.7,83.7,83.7,88.2,88.2,47.8,47.8,57.9,61.7,57.9,47.8,47.8,88.2,88.2,83.7,83.7,43.7,43.7,53.7,57.2};
float L=70;
pushMatrix();
translate(0,-600,0);
rotateX(90*PI/180);
rotateZ(-90*PI/180);
//void Z_Polyon_Plate(int Pn,float X[],float Y[],float L)//多角形板
Z_Polyon_Plate(Pn,X,Y,L);
popMatrix();
}
void X_M20Nut_XYZ(float X,float Y,float Z)
{
pushMatrix();
translate(X,Y,Z);
pushMatrix();
rotateY(90*PI/180);
Z_6Bar(30,16);
popMatrix();popMatrix();
}
void X_M16Nut_XYZ(float X,float Y,float Z)
{
pushMatrix();
translate(X,Y,Z);
pushMatrix();
rotateY(90*PI/180);
Z_6Bar(24,13);
popMatrix();popMatrix();
}
}
(1)上記スケッチにおいて、My_OB02クラスはMy_OBクラスを継承します。