使用Openlayers 5检查坐标是否有效EPSG 3857

使用Openlayers 5检查坐标是否有效EPSG 3857,openlayers,map-projections,openlayers-5,Openlayers,Map Projections,Openlayers 5,我正在使用openlayers 5和angular6 我已经创建了一个简单的表单,用户可以给出EPSG3857坐标的X和Y,提交,一个点将在那里渲染,地图将在那里缩放。我用的是向量层 我想检查XY是否是有效的EPSG3857坐标 我尝试使用try/catch块,但这在我第二次提交表单时起作用 我把一些疯狂的XY像6.34 2401118651.91,我提交,点被创建,地图在白色背景中放大。我必须再次提交相同的表单,以便try/catch实际捕获错误 我怎样才能马上修复并检查坐标?这是我写的代码

我正在使用openlayers 5和angular6

我已经创建了一个简单的表单,用户可以给出EPSG3857坐标的X和Y,提交,一个点将在那里渲染,地图将在那里缩放。我用的是向量层

我想检查XY是否是有效的EPSG3857坐标

我尝试使用
try/catch
块,但这在我第二次提交表单时起作用

我把一些疯狂的XY像
6.34 2401118651.91
,我提交,点被创建,地图在白色背景中放大。我必须再次提交相同的表单,以便
try/catch
实际捕获错误

我怎样才能马上修复并检查坐标?这是我写的代码

  coordsSubmitted(){
    let point = [this.coordsForm.controls.coordsx.value, this.coordsForm.controls.coordsy.value];          
    try {
      this.coordFeature.setGeometry(new Point(point));  
      this.coordsource.addFeatures([this.coordFeature]) ;  
      this.olmap.getView().animate({
        center: point,
        duration: 2500,
        zoom:10
      });     
    } catch (error) {
      this.coordsFormErrorMsg = 'Error. Only EPSG 3857 coords.';
    }       
  }

谢谢

您可以检查输入是否在投影范围内。这方面的可接受值为:

最小X:-20026376.39
最小Y:-20048966.10
最大X:20026376.39
最大Y:20048966.10

您可以将这些限制限制限制到正在映射的区域