1
Хорошо, как оценить очень простую грамматику antlr, которая делает только это.Форма Java3d с Antlr
Box(1,2,4)
Cylinder(1,2)
и строит JAVA3D формы, (учитывая, я уже построил холст для JAVA3D и иметь код для создания каждого элемента в Java,
protected static BranchGroup addBox1(Float a, Float b, Float C){
// create branch for display
TransformGroup bodyTransform = new TransformGroup();
BranchGroup bg = new BranchGroup();
bg.setCapability(BranchGroup.ALLOW_DETACH);
bg.setUserData(shapeId);
// set transformation
bodyTransform = setTransformShape(0,0,0,0,0,0,0);
// create box
Box tmpBox = new Box(a,b,c, Primitive.GENERATE_NORMALS |
Primitive.GENERATE_TEXTURE_COORDS,setAppearance(color));
getCoords(tmpBox);
bodyTransform.addChild(tmpBox);
trFormList.add(bodyTransform);
shapeId++;
//add box to branch
bg.addChild(bodyTransform);
return bg;
}
)
благодаря
Я не уверен, что вы подразумеваете под «строит java3d фигуры». Не могли бы вы привести пример? Или вы хотите передать в конце двух строк: «Вставка (1,2,4)» и «Цилиндр (1,2)» в защищенный метод «addBox1»? –
спасибо за ответ, я хотел бы позвонить/вставить код Java на этом языке, чтобы при написании Box (1,2,4) он вызовет метод addBox1 в приложении, которое строит форму, то же самое для Cylinder (1 , 2), который вызывает другой метод, называемый addCylinder (1,2) – Eldeus