Swing 画虚线示例代码

float[] dash1 = { 3.0f, 3.0f };
  BasicStroke s = new BasicStroke(profileLineWidth, BasicStroke.CAP_BUTT,
    BasicStroke.JOIN_MITER, 10.0f, dash1, 3.0f);
  g2.setStroke(s);

  g2.setPaint(Color.RED);
  maLadderPath.reset();
  double startX = dP[3].getX();
  double startY = dP[3].getY();

  maLadderPath.moveTo(startX, startY);
  for (int i = 0; i < xSliceMAValueList.size(); i++) {
   double endY = startY
     + xSliceMAValueList.get(i).getSliceThicknessValue();
   maLadderPath.lineTo(startX + xSliceMAValueList.get(i).getMaValue()
     - 5, startY);
   maLadderPath.lineTo(startX + xSliceMAValueList.get(i).getMaValue()
     - 5, endY);
   startY = endY;
  }
  maLadderPath.lineTo(startX, startY);
  g2.draw(maLadderPath);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现3D CAD需要使用Java的图形库,如Java3D或JOGL,并使用Swing作为用户界面。下面是一个简单的示例代码,它使用Java3D和Swing来创建一个简单的3D CAD程序: ``` import javax.media.j3d.*; import com.sun.j3d.utils.geometry.*; import com.sun.j3d.utils.universe.*; import javax.swing.*; import java.awt.*; public class ThreeDCAD extends JFrame { private SimpleUniverse universe; private BranchGroup group; private TransformGroup transformGroup; public ThreeDCAD() { // 创建3D图形环境 GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); Canvas3D canvas = new Canvas3D(config); universe = new SimpleUniverse(canvas); // 创建场景的物体 group = new BranchGroup(); transformGroup = new TransformGroup(); transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); group.addChild(transformGroup); Box box = new Box(0.5f, 0.5f, 0.5f, Box.GENERATE_NORMALS, null); transformGroup.addChild(box); universe.addBranchGraph(group); // 创建Swing界面 JPanel panel = new JPanel(new BorderLayout()); panel.add(canvas, BorderLayout.CENTER); getContentPane().add(panel); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(800, 600); setVisible(true); } public void rotate(float x, float y, float z) { // 旋转物体 Transform3D transform = new Transform3D(); transform.rotX(x); transform.rotY(y); transform.rotZ(z); transformGroup.setTransform(transform); } public static void main(String[] args) { ThreeDCAD cad = new ThreeDCAD(); cad.rotate(0.3f, 0.5f, 0.7f); } } ``` 这个程序创建了一个简单的3D场景,其包括一个立方体,并使用Swing来创建用户界面。程序还提供了一个rotate方法,用于旋转立方体。您可以使用Java3D提供的其他几何图形和变换来创建更复杂的3D CAD程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值