标签: projection

Linq投影将列表展平为一个被删除的字符串

我试图连接和逗号删除(或空格)列表并投影它.我在下面有一些示例代码.

public class Friend
{
    public string Name { get; set; }
}

public class Person
{
    public int PersonID { get; set; }
    public string FirstName { get; set; }
    public string Surname { get; set; }
    List<Friend> Friends { get; set; }
}

public class ProjectedPerson
{
    public int PersonID { get; set; }
    public string FirstName { get; set; }
    public string Surname { get; set; }
    public string FriendsList { get; set; }
}

public class …
Run Code Online (Sandbox Code Playgroud)

linq entity projection

2
推荐指数
1
解决办法
1056
查看次数

使用linq解析样式属性集合

我想解析一个SVG样式属性,它只是一个分隔的字符串,例如

"补:#e2b126;行程:#010101;笔划宽度:0.3177;卒中miterLimit分别:10"

进入一个,Dictionary<string,string>以便我可以对它进行一些处理.

这就是我所拥有的,它完成了这项工作,但我想使用linq投影使其更整洁,似乎无法获得语法.我尝试使用.Select().ToDictionary等,但没有快乐.谢谢:

string attributes = "fill:#e2b126;stroke:#010101;stroke-width:0.3177;stroke-miterlimit:10";
var pairs = attributes.Split(';').ToList();
var dic = new Dictionary<string, string>();
pairs.ForEach(p =>
    {
        var pair = p.Split(':');
        dic.Add(pair[0], pair[1]);
    });
 foreach (var k in dic.Keys)
 {
       Console.WriteLine(k + " " + dic[k]);
 }
Run Code Online (Sandbox Code Playgroud)

预期产量:

fill #e2b126 
stroke #010101 
stroke-width 0.3177 
stroke-miterlimit 10
Run Code Online (Sandbox Code Playgroud)

.net c# linq collections projection

2
推荐指数
1
解决办法
939
查看次数

添加列对vertica DB中超投影的影响

我在 vertica DB 中有一个概念性问题。如果我在 vertica 中创建一个表“abc”,其中列 a、b、c 按 a、b 排序,它将自动为其创建一个超级投影。现在,如果我更改表“abc”并向其添加列“d”,它将创建一个新的超级投影。问题是,“a,b 的顺序”会在这个新的超级投影中受到影响吗?vertica 在新的超级投影中会保留这个顺序吗?另外,它还会包含此顺序的“d”列吗?默认行为是什么?

projection vertica

2
推荐指数
1
解决办法
404
查看次数

使用 R 更改光栅投影

我正在尝试使用Rraster包更改光栅投影。输入栅格投影为兰伯特方位角;参数在这里:

Coordinate System:
Lambert_Azimuthal_Equal_Area
False_Easting: 4321000,000000
False_Northing: 3210000,000000
Central_Meridian: 10,000000
Latitude_Of_Origin: 52,000000
GCS_ETRS_1989
Datum: D_ETRS_1989
Prime Meridian: 0


PROJCS
 ["ETRS_1989_LAEA",
   GEOGCS ["GCS_ETRS_1989",
           DATUM ["D_ETRS_1989",
                  SPHEROID ["GRS_1980",6378137.0,298.257222101]],
           PRIMEM["Greenwich",0.0],
          UNIT["Degree",0.0174532925199433]],
   PROJECTION["Lambert_Azimuthal_Equal_Area"],
   PARAMETER["False_Easting",4321000.0],
   PARAMETER["False_Northing",3210000.0],
   PARAMETER["Central_Meridian",10.0],
   PARAMETER["Latitude_Of_Origin",52.0],
   UNIT["Meter",1.0]]
Run Code Online (Sandbox Code Playgroud)

我需要将它们转换为 ESRI ASCII 格式的简单栅格,使用经度和纬度坐标,使用墨卡托式投影,像元大小为 0.1 度(我希望我能很好地解释自己,因为我没有足够的 GIS技能,抱歉)。我需要的是格式.ASC中的栅格,其中栅格的每个值对应于 size 的单个单元格N x N,其中N以度为单位(例如 0.1 度),栅格坐标以经度/纬度为单位。

我尝试在 中使用rasterR,并遵循为该projectRaster函数找到的示例。但是经过多次尝试使用多个参数后,我无法正确制作。我想我没有使用正确的参数进行投影、数据或类似的东西。

这是我尝试过的。我在 R 中加载栅格,然后使用以下方法设置其投影:

>crs(r)<-"+proj=laea +lat_1=52 +lon_0=-10 +ellps=GRS80"
Run Code Online (Sandbox Code Playgroud)

然后我定义输出投影并尝试转换并保存:

>newproj <- "+proj=lonlat +lat_1=52 +lon_0=-10 +ellps=WGS84"
>pr2 …
Run Code Online (Sandbox Code Playgroud)

gis r projection raster

2
推荐指数
1
解决办法
1万
查看次数

修改属性 vec2 变量

在我的顶点着色器中,我很想修改attribute vec2 a_position在片段着色器中共享的变量。通过此修改,我应该将图像转换为圆柱投影。
这就是我在着色器中所做的:

<!-- vertex shader -->
<script id="2d-vertex-shader" type="x-shader/x-vertex">
    attribute vec2 a_position;

    uniform vec2 u_resolution;
    uniform mat3 u_matrix;

    varying vec2 v_texCoord;

    void main() {
       // modifying START
       float angle = atan(a_position.y, a_position.x);
       float r = sqrt(a_position.x*a_position.x + a_position.y*a_position.y);
       a_position.x = r*cos(angle);
       a_position.y = r*sin(angle);
       // modifying STOP
       gl_Position = vec4(u_matrix * vec3(a_position, 1), 1);
       v_texCoord = a_position;
    }
</script>

<!-- fragment shader -->
<script id="2d-fragment-shader" type="x-shader/x-fragment">
    precision mediump float;

    // our texture
    uniform sampler2D u_image;

    // …
Run Code Online (Sandbox Code Playgroud)

html canvas projection webgl

2
推荐指数
1
解决办法
1494
查看次数

Spring Data Rest投影排序

我对我的实体有一个投影,我需要按内部类的字段对它进行排序.这是我的实体的一部分:

class Person {
    UUID guid;
    Set<DisabilityHistory> disabilityHistory;
}
class DisabilityHistory {
    Date createdDate;
}
Run Code Online (Sandbox Code Playgroud)

我知道sortparam但是请求就像api/person/search?projection=myProjection&sort=disabilityHistory.createdDate,asc不起作用.我发现的唯一解决方案是@OrderBy在我的实体中使用注释,但在这种情况下,它将始终排序,我担心性能.

java spring projection spring-data-rest

2
推荐指数
1
解决办法
1113
查看次数

将 XYZ 转换为 XY(世界坐标到屏幕坐标)

有没有办法转换该数据:

\n\n
    \n
  • 对象位置是 3D 点(X、Y、Z),
  • \n
  • 相机位置是 3D 点(X、Y、Z),
  • \n
  • 相机偏航、俯仰、横滚(-180:180、-90:90、0)
  • \n
  • 视野(-45\xc2\xb0:45\xc2\xb0)
  • \n
  • 屏幕宽度和高度
  • \n
\n\n

进入屏幕上的 2D 点(X,Y)?

\n\n

我正在根据这组确切的数据寻找正确的数学计算。

\n

math 3d projection

2
推荐指数
1
解决办法
6460
查看次数

Kitti Velodyne 指向像素坐标

从 Velodyne 的角度来看,如何获得每个相机的像素坐标?

使用pykitti point_cam0 = data.calib.T_cam0_velo.dot(point_velo) 我们可以得到图像上的投影,这是Kitti Dataset 论文的方程 7 :

y = P rect (i) R rect (0) T速度凸轮x

但是从那里开始,如何获得每个图像上的实际像素坐标?

projection lidar camera-calibration

2
推荐指数
1
解决办法
4522
查看次数

如何使用安全规则过滤文档中的字段

我正在试验 Cloud Firestore 安全规则。是否可以过滤文档字段?

例如,如果您有一个文档

{
  name: "John Doe",
  email: "doe@example.com"
}
Run Code Online (Sandbox Code Playgroud)

那么某些用户就不允许使用电子邮件地址获取文档。他们的申请要求文件

firebase.firestore.doc('users/doe-uid')
Run Code Online (Sandbox Code Playgroud)

并得到这个文件

{
  name: "John Doe",
}
Run Code Online (Sandbox Code Playgroud)

如果是,如何?

我认为应该是可能的,因为Cloud Firestore 安全规则参考在第一句话中说(重点是我的):

Cloud Firestore 安全规则用于确定谁对存储在 Cloud Firestore 中的集合和文档具有读写访问权限,以及文档的结构方式以及它们包含哪些字段和值

但是,我在参考资料中找不到任何告诉我如何过滤字段的内容。

projection firebase-security google-cloud-firestore

2
推荐指数
1
解决办法
1313
查看次数

如何从子文档数组中只检索一个特定元素?

我的情况如下:我有一个文档,里面有一个文档数组,表示用户加入的应用程序(如图所示).

文档示例

我需要用户根据应用程序名称检索一个文档...我编写了以下代码并且它可以工作......但它检索所有应用程序.怎么做只返回一个?

public Application GetUserApplication(string username)
        {
            var query = Query.And(Query.EQ("UserName", username), Query.ElemMatch("Applications", 
                Query.EQ("Key", this.applicationKey)));

            MongoCursor<BsonDocument> cursor = this.users.FindAs<BsonDocument>(query);

            cursor.SetFields(new string[]{ "Applications" });
            cursor.SetLimit(1);

            var it = cursor.GetEnumerator();

            var apps = it.MoveNext() ? it.Current["Applications"].AsBsonArray : null;

            ...
        }
Run Code Online (Sandbox Code Playgroud)

c# arrays projection mongodb

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