С гео-пространственными запросами Mon go, как мне найти, где именно произошло пересечение? - PullRequest
1 голос
/ 08 апреля 2020

После вычерчивания координат на карте:

Map

Как найти координаты , где произошло пересечение. Я могу найти то, что другие LineStrings пересекаются с указанным c LineString, используя это:

dbo.collection('loc').find({ "loc" : {
    "$geoIntersects" : {
        "$geometry" : obj //Specific Line String
    }   
} }).toArray(function(err, result) {
    if (err) throw err
    console.log('geointerescts ',result, '-=-=-=-')
})

И это возвращает правильные линии строк, с которыми он пересекается, включая себя. Примерно так, когда я выбираю Бостон в Новый Орлеан:

geointerescts  [
  {
    _id: 5e88ecc6f7d52d95b764da87,
    loc: {
      Name: 'Directions from Boston, MA, USA to New Orleans, LA, USA',
      type: 'LineString',
      coordinates: [Array]
    }
  },
  {
    _id: 5e88f5875dfdd396d60e6fd4,
    loc: {
      Name: 'Directions from Chicago, IL, USA to Miami, FL, USA',
      type: 'LineString',
      coordinates: [Array]
    }
  },
  {
    _id: 5e88fe29a44e5ba462a702ad,
    loc: {
      Name: 'Directions from Austin, TX, USA to Charlotte, NC, USA',
      type: 'LineString',
      coordinates: [Array]
    }
  }
]

Как мне получить точки пересечения? Что-то вроде массива координат в Грузии или Алабаме в этом примере.

...