You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Rails控制器中添加前数组末尾元素以生成连续GeoJSON线串?

解决方案:在控制器中调整数组格式以生成连续GeoJSON线串

你可以在控制器中通过遍历分组后的数组,将每个子数组的最后一个元素添加到下一个子数组的头部,来实现线串的连续性。具体代码如下:

@slopes = Slope.order(:id)
@array_slopes = @slopes.chunk_while { |i, j| i.average_slope == j.average_slope }.to_a

# 处理分组数组,确保相邻线串连续
@array_slopes.each_with_index do |current_group, index|
  # 最后一个分组无需处理,因为没有后续分组
  next if index == @array_slopes.size - 1

  # 取出当前分组的最后一个Slope元素
  connecting_slope = current_group.last
  # 将该元素插入到下一个分组的开头
  @array_slopes[index + 1].unshift(connecting_slope)
end

代码说明

  • 遍历分组数组时跳过最后一个分组,避免出现越界错误
  • 对每个非末尾分组,提取其最后一个元素并插入到下一个分组的最前面
  • 处理后相邻分组会共享一个元素,生成LineString时线条就不会断裂

内容的提问来源于stack exchange,提问作者Ben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 07:40:21