【问题标题】:How to make polygon from > 100 000 points?如何从> 100 000个点制作多边形?
【发布时间】:2016-01-09 12:36:51
【问题描述】:

我正在尝试从我的文件 (x, y, z) 制作多边形。 我有很多行,所以我不知道每个多边形中应该有多少条记录。 我认为我应该在加载文件时这样做:

 while (file.hasNextDouble()) {
            a = br.nextDouble();
            b = br.nextInt();
            c = br.nextInt();
            vertices.add(new Vertice(a, b, c));
 }

请告诉我应该如何修复该加载代码。你能告诉我如何添加例如每三条记录(a,b,c)到一个新的多边形?

【问题讨论】:

  • 我不明白你的问题。这段代码不起作用吗?或者你想改进它?
  • @Laerte,这条鳕鱼正在工作,但这只是制作新对象顶点并将他添加到我的列表 - 顶点。我想修复它以在同一代码中创建新的 Polygon 对象。有可能吗?
  • 你怎么知道每个多边形有多少个顶点?有什么方法可以在文件中识别它们吗?
  • 我不知道.. 我有很多顶点,我不知道应该在一个多边形中添加多少 (x,y,z)。我尝试连接顶点。
  • 如果您需要从多个顶点制作多边形并且希望它们确定,您应该有一种方法可以在文件中识别它们。如果您无法识别它们,您可以使用n 顶点制作多边形,其中n 是一个随机数。

标签: java awt polygon


【解决方案1】:

每 3 个顶点生成一个多边形。 我没有测试它,但就是这样:

    int i = 0;
int polySize = 3;
List<Polygon> polyList = new List<Polygon>();
Polygon poly = new Polygon();

while (file.hasNextDouble()) {
    a = br.nextDouble();
    b = br.nextInt();
    c = br.nextInt();
    vertice = new Vertice(a, b, c);
    poly.add(vertice);

    if (i == polySize-1)
    {
        polyList.add(poly);
        poly = new Polygon();
        i = 0;
    }
    i++;
}

希望对你有帮助...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-07
    • 2013-02-02
    • 1970-01-01
    • 2015-11-03
    • 1970-01-01
    • 2013-12-06
    • 2016-04-08
    • 1970-01-01
    相关资源
    最近更新 更多