小编Pee*_*ker的帖子

使用Sql Spatial Data(C#)查找不规则多边形的"可视"中心

我在Bing Maps WPF控件上绘制区域(使用SqlGeometry/ SqlGeography并将它们转换为WPF LocationCollection等效项)并需要标记它们.我得到了区域上绘制的标签,并将它们附加到找到的点上STCentroid().当然,正如您所想象的那样,"U"或"C"形区域存在问题,其中质心最终位于区域之外,这使得标签不正确.

有没有办法使用SqlGeometry/ SqlGeography找到"视觉"中心或者找到最适合形状并使用该中心的圆圈?我尝试了各种方法,STPointOnSurface()但似乎STPointOnSurface()总是在边缘上选择一个点,就像DCREHA一样(底部深绿色区域的标签总是在边缘上:

在此输入图像描述

.net c# sql-server polygon bing-maps

13
推荐指数
1
解决办法
1403
查看次数

将std :: unique_ptr类成员标记为const

许多用于std::unique_ptr管理类依赖项所有权的示例如下所示:

class Parent
{
public:
    Parent(Child&& child) :
    _child(std::make_unique<Child>(std::move(child))){}
private:
    std::unique_ptr<Child> _child;
};
Run Code Online (Sandbox Code Playgroud)

我的问题是,标记该_child成员是否const有任何意想不到的副作用?(除了是保证reset(),release()等不能被称为_child).

我问,因为我还没有在一个例子中看到它,不知道这是故意还是仅仅是为了简洁/普遍.

c++ smart-pointers ownership unique-ptr c++11

8
推荐指数
1
解决办法
1419
查看次数

熊猫read_csv无法将ISO8601识别为datetime dtype

目前,我正在使用熊猫DataFrame将第一列作为索引将csv文件读入。第一列为 ISO 8601格式,因此根据read_csv的文档,应将其识别为日期时间:

In [1]: import pandas as pd

In [2]: df = pd.read_csv('data.csv', index_col=0)

In [3]: print df.head()
                        U     V     Z    Ubar    Udir
2014-11-01 00:00:00  0.73 -0.81  0.46  1.0904  317.97
2014-11-01 01:00:00  1.26 -1.50  0.32  1.9590  319.97
2014-11-01 02:00:00  1.50 -1.80  0.13  2.3431  320.19
2014-11-01 03:00:00  1.39 -1.65  0.03  2.1575  319.89
2014-11-01 04:00:00  0.94 -1.08 -0.03  1.4318  318.96
Run Code Online (Sandbox Code Playgroud)

但是,在查询索引dtype时,它返回'object':

In [4]: print df.index.dtype
object
Run Code Online (Sandbox Code Playgroud)

然后,我必须手动将其转换为datetime dtype:

In [5]: df.index = pd.to_datetime(df.index)

In [6]: print …
Run Code Online (Sandbox Code Playgroud)

python datetime pandas

5
推荐指数
1
解决办法
3532
查看次数