java多边形
㈠ java 怎么计算多边形面积
已经有哪些条件
㈡ java里面怎么画多边形
如果是可以用正方形,三角形,圆形等基本图形拼接出来的多边形,可以使用area,然后对基本图形取交集或者并集即可
㈢ Java程序中计算多边形,三角形,长方形的周长和面积,代码和格式是什么呀.-
public class Rectangle { //边的初始化
private int height;
private int width;
private int area;
private int perimeter;
public Rectangle(int h,int w){ //构造方法执行
height = h;
width = w;
area = height*width;//计算长方形面积
perimeter = 2*(height+width);//计算长方形周长
}
public void result(){
System.out.println("高: "+height);
System.out.println("长: "+width);
System.out.println("面积为:"+area);
System.out.println("周长为:"+perimeter);
}
public static void main(String args[]){
Rectangle exit =new Rectangle(10,8);
exit.result();
}}
㈣ java画多边形和三角形
python">好像不难不过我不是用java写的思路大概就这样
self.list=[]
defonStart(self,event):
self.list.append((event.x,event.y))
defonPolygondraw(self):
i=askinteger("问题","你要几边形啊",minvalue=1,
maxvalue=7)
polygon=[]
foriinrange(i):
polygon.append(self.list[-i-1])
self.panel.create_polygon(polygon)
㈤ java 画多边形。。
自己查api,Graphics类有个花封闭曲线的方法,传进去一组x坐标,一组Y坐标
要么用AlphaComposite做颜色混合,选择src_over
SRC_OVER混合规则把源像素(新的像素)组合到目的像素(原有像素)上面,这样重叠的部分就只显示了源像素的颜色。如果你开始渲染一个蓝色矩形,然后把一个红色矩形和它部分重叠,则重叠的部分会被渲染为红色。换句话说最后被渲染成的颜色将在最上面显示出来。
㈥ java里面怎么画多边形
我采取的方式是画直线,在点击右键的时候再把第一个点和最后一个点连接起来,这个是不规则的多边形,像五角星,六角星那些规则的,就用drawPolygon(int[] xPoints,int[] yPoints,int nPoints)方法,对于每个点的X,和y这个就要自己去计算,有规律的,都是按比例去计算得到点。
㈦ java多边形继承
class Rectangle extends Parallelogram {
private double length;
private double width;
// constructor
public Rectangle(double length, double width) {
super(length, width);
this.length = length;
this.width = width;
}
// get the area of the rectangle
public double getArea() {
return length * width;
}
}
class Square extends Rectangle {
private double side;
// constructor
public Square(double side) {
super(side, side);
this.side = side;
}
// get the area of the square
public double getArea() {
return side * side;
}
}
再详细的就没必要了,毕竟只是为了说明多边形之间的继承关系。
㈧ 如何用Java写出泰森多边形算法代码我找了好多资源表示无解呀
packagecom.wangyin.seapay.loginkgo;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.logging.Level;
importjava.util.logging.Logger;
importorg.geotools.data.simple.SimpleFeatureCollection;
importorg.geotools.process.Process;
importorg.geotools.process.ProcessException;
importorg.geotools.process.ProcessFactory;
importorg.geotools.process.spatialstatistics.core.Params;
importorg.geotools.process.spatialstatistics.enumeration.ThiessenAttributeMode;
importorg.geotools.process.spatialstatistics.operations.ThiessenPolygonOperation;
importorg.geotools.text.Text;
importorg.geotools.util.NullProgressListener;
importorg.geotools.util.logging.Logging;
importorg.opengis.util.ProgressListener;
importcom.vividsolutions.jts.geom.Geometry;
/**
*Createdbyhanxiaofeion2018/4/11.
*/
{
=Logging.getLogger(ThiessenPolygonProcess.class);
privatebooleanstarted=false;
publicThiessenPolygonProcess(ProcessFactoryfactory){
super(factory);
}
(){
returnfactory;
}
(,
,GeometryclipArea,ProgressListenermonitor){
Map<String,Object>map=newHashMap<String,Object>();
map.put(ThiessenPolygonProcessFactory.inputFeatures.key,inputFeatures);
map.put(ThiessenPolygonProcessFactory.attributes.key,attributes);
map.put(ThiessenPolygonProcessFactory.clipArea.key,clipArea);
Processprocess=newThiessenPolygonProcess(null);
Map<String,Object>resultMap;
try{
resultMap=process.execute(map,monitor);
return(SimpleFeatureCollection)resultMap
.get(ThiessenPolygonProcessFactory.RESULT.key);
}catch(ProcessExceptione){
LOGGER.log(Level.FINER,e.getMessage(),e);
}
returnnull;
}
@Override
publicMap<String,Object>execute(Map<String,Object>input,ProgressListenermonitor)
throwsProcessException{
if(started)
thrownewIllegalStateException("Processcanonlyberunonce");
started=true;
if(monitor==null)
monitor=newNullProgressListener();
try{
monitor.started();
monitor.setTask(Text.text("Grabbingarguments"));
monitor.progress(10.0f);
=(SimpleFeatureCollection)Params.getValue(
input,ThiessenPolygonProcessFactory.inputFeatures,null);
if(inputFeatures==null){
thrownewNullPointerException("");
}
=(ThiessenAttributeMode)Params.getValue(input,
ThiessenPolygonProcessFactory.attributes,
ThiessenPolygonProcessFactory.attributes.sample);
GeometryclipArea=(Geometry)Params.getValue(input,
ThiessenPolygonProcessFactory.clipArea,null);
monitor.setTask(Text.text("Processing..."));
monitor.progress(25.0f);
if(monitor.isCanceled()){
returnnull;//userhascanceledthisoperation
}
//startprocess
=newThiessenPolygonOperation();
operation.setAttributeMode(attributes);
if(clipArea!=null){
operation.setClipArea(clipArea);
}
=operation.execute(inputFeatures);
//endprocess
monitor.setTask(Text.text("Encodingresult"));
monitor.progress(90.0f);
Map<String,Object>resultMap=newHashMap<String,Object>();
resultMap.put(ThiessenPolygonProcessFactory.RESULT.key,resultFc);
monitor.complete();//sameas100.0f
returnresultMap;
}catch(Exceptioneek){
monitor.exceptionOccurred(eek);
returnnull;
}finally{
monitor.dispose();
}
}
}
㈨ java 多边形面积
三角法求多边形面积,就是把多边形划分为多个三角形,然后求每一个三角形的面积和。三角形的面积在已知顶点坐标的情况下使用三角函数即可得出。
在划分多边形为三角型的时候要注意凸多变形和凹多边形。对于特殊的多边形,如有窟窿的多边形、窟窿套窟窿的多变形和由多个部分组成的多边形,需要结合实际情况分析。
你可以找本计算机图形学的书看看,多边形的识别和求面积是基本算法