我一直在四处寻找,似乎无法找到我正在寻找的东西.我发现了"规范公式",但是使用这些公式的最佳方法是什么?我必须缩小每个顶点? 或者,还有更好的方法?
一个公式真的可以帮助我,但我也在寻找关于相对于观众位置的近和远z平面的解释
我正在写一个NHibernate标准,选择支持分页的数据.我正在使用COUNT(*) OVER()SQL Server 2005(+)中的表达式来获取可用行的总数,正如Ayende Rahien 所建议的那样.我需要这个数字才能计算出总共有多少页面.这个解决方案的优点在于我不需要执行第二个查询来获取行计数.
但是,我似乎无法设法编写工作标准(Ayende只提供HQL查询).
这是一个SQL查询,显示我想要的东西,它工作得很好.请注意,我故意省略了实际的分页逻辑以关注问题:
SELECT Items.*, COUNT(*) OVER() AS rowcount
FROM Items
Run Code Online (Sandbox Code Playgroud)
这是HQL:
select
item, rowcount()
from
Item item
Run Code Online (Sandbox Code Playgroud)
请注意,该rowcount()函数在自定义NHibernate方言中注册,并COUNT(*) OVER()在SQL中解析.
要求是使用条件表达查询.不幸的是,我不知道如何做到正确:
var query = Session
.CreateCriteria<Item>("item")
.SetProjection(
Projections.SqlFunction("rowcount", NHibernateUtil.Int32));
Run Code Online (Sandbox Code Playgroud)
每当我添加投影时,NHibernate都不会选择item(就像没有投影一样),就rowcount()在我真正需要的时候.此外,我似乎无法item整体投影,只有它的属性,我真的不想列出所有这些.
我希望有人能解决这个问题.不管怎么说,还是要谢谢你.
我在Grails中有一些投影问题.能帮我复习一下并为我提出解决方案吗?
我想查询许多表上的数据,这些表具有多对一的关系,并在两个表上的某些属性上进行投影.例如:
class Person {
int id
String name
String address
static hasMany = [cars : Car]
}
class Car {
int id
String brand
long price
Person owner
static belongsTo = [owner : Person]
}
Run Code Online (Sandbox Code Playgroud)
那么,我如何只使用一个查询withCriteria(应用投影)来获取指定汽车的信息(包括品牌,价格和所有者名称)?是否可以使用:
Car.withCriteria {
projections {
property("brand")
property("price")
property("owner.name")
}
eq("id", carId)
}
Run Code Online (Sandbox Code Playgroud)我可以使用投影获取一个指定人员的信息以及他所有车辆的名称吗?例如:[01,Perter,01 Street A,[Mercedes,Toyota,Ducatti]]?
特殊情况:(与上述人员类别)
一个人可以加入许多组织,组织可以有一个"父"组织(反之亦然,一个组织可以有许多其他依赖组织).但是有一条规则:一个人只能加入一个特定组织的一个儿童组织.因此,对于给定的组织O和人P,获得P的信息的最快方式是什么,以及具有P作为成员的O的依赖组织的名称.我更喜欢使用Grails投影.
这是数据模型:
class Person {
int id
String name
String address
static hasMany = [joinedOrgs : Organization]
}
class Organization {
int id
String name
Organization parentOrg
static …Run Code Online (Sandbox Code Playgroud)是否可以使用Select to anonymous type进行投影?
这是一些示例代码
public interface ITest
{
string A{get;}
int B{get;}
}
string[] names = { "Tom", "Dick", "Harry", "Mary", "Jay" };
IQueryable<ITest> query =
from n in names.AsQueryable()
select new {A = n.ToUpper(), B = 2012};
Run Code Online (Sandbox Code Playgroud)
上面的代码导致了
无法将类型'System.Linq.IQueryable'隐式转换为'System.Linq.IQueryable'
注意:如果我要定义一个实现ITest的类Test,然后使用以下方法投影到该类,我可以使上面的代码工作:
select new Test {A = n.ToUpper(), B = 2012};
Run Code Online (Sandbox Code Playgroud)
为什么?我试图看看我是否只能定义接口而不必定义对象的具体实现,并让Linq创建对象.
我现在正在深入阅读Scala.以下是本书的摘录:
所有与路径相关的类型都是类型投影.路径依赖类型由编译器
foo.Bar重写foo.type#Bar...在Scala中,所有类型引用都可以编写为针对命名实体的项目.scala.String类型是
scala.type#String名称scala引用包的位置的简写,scala类型String由Stringscala包上的类定义.
显然,没有scala.String课,但我没有重现这一点Null.
scala> type N = scala.type#Null
<console>:7: error: type mismatch;
found : type
required: AnyRef
type N = scala.type#Null
Run Code Online (Sandbox Code Playgroud)
所以,我的问题如下.路径依赖类型是否类型预测?它只是内部编译器表示还是可以用scala代码表示?
std::min_element将返回operator<(T,T)由自定义谓词定义的最小元素bool Pred(T,T).是否有类似的函数返回投影函数f(T)->R采用最小值的元素?
显然我可以定义bool Pred(t1,t2) { return f(t1) < f(t2); },但当f是lambda时,这有点不方便.
我试图更改或指定一个德国-shape文件的投影NA来+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0,但不知何故,它不能很好地工作.
可重复的示例:Shapefile和其他文件可以在这里下载:
我尝试的是以下内容:
library(maptools)
library(sp)
library(rgeos)
library(rgdal)
projection.x <- CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0")
mapG <- readShapePoly("vg2500_lan.shp", verbose=TRUE, proj4string=projection.x)
summary(mapG)
mapG <- spTransform(mapG, CRS("+proj=longlat +ellps=WGS84 +datum=WGS84"))
Run Code Online (Sandbox Code Playgroud)
所以,问题是我无法在地图上绘制我的观察结果.见下文
使用包装中的geocode功能检测到ponits ggmap.
任何想法如何改变shapefile的投影或谷歌坐标的投影将非常感激!
我正在尝试移植一个旧的增强现实项目,该项目基于另一个透视HMD的metaio框架.
因为metaio是由苹果购买的,它的可用文档和支持非常有限,并且这种新的HMD不支持开箱即用.
除了相机校准/手眼校准之外,一切都已经有效了.
我已经计算了一个Projection矩阵P(使用SPAAM),它将摄像机坐标系中的点变换到屏幕(通过自定义渲染测试).不幸的是,我不能直接在metaio中设置投影矩阵,但必须单独设置相机参数和手眼校准进行渲染.
如所描述因此,我已提取从投影矩阵P的外在和内在的照相机参数这里.
但是这些在设置时无法正常工作.结果似乎没有完全关闭,导致渲染的比例看起来是正确的,并且相机和眼睛之间的手动测量距离约为126mm(在x轴上平移).
内在函数(分辨率:1280 x 720):
我想我错过了一些我不知道的额外步骤.我感谢任何想法和帮助.
附加信息:
transformation projection augmented-reality camera-calibration metaio
我想从屏幕坐标转换为世界坐标OpenGL.我正在glm为此目的使用(我也在使用glfw)
这是我的代码:
static void mouse_callback(GLFWwindow* window, int button, int action, int mods)
{
if (button == GLFW_MOUSE_BUTTON_LEFT) {
if(GLFW_PRESS == action){
int height = 768, width =1024;
double xpos,ypos,zpos;
glfwGetCursorPos(window, &xpos, &ypos);
glReadPixels(xpos, ypos, 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &zpos);
glm::mat4 m_projection = glm::perspective(glm::radians(45.0f), (float)(1024/768), 0.1f, 1000.0f);
glm::vec3 win(xpos,height - ypos, zpos);
glm::vec4 viewport(0.0f,0.0f,(float)width, (float)height);
glm::vec3 world = glm::unProject(win, mesh.getView() * mesh.getTransform(),m_projection,viewport);
std::cout << "screen " << xpos << " " << ypos << " …Run Code Online (Sandbox Code Playgroud) 我使用opencv校准了我的单声道相机.现在我知道相机的内部矩阵和失真系数[K1,K2,P1,P2,K3,K4,K5,K6].假设相机位于[x,y,z]并且[Roll,Pitch,Yaw]旋转.当相机在地板上观看时,如何获得世界坐标中的每个像素[z = 0].
