有没有人有一个函数可以在 C++ 中返回 3x3 矩阵的透视投影?
Matrix Perspective()
{
Matrix m(0, 0, 0); // Creates identity matrix
// Perspective projection formulas here
return m;
}
Run Code Online (Sandbox Code Playgroud) 在 Python 的 matplotlib 库中,很容易在创建时指定坐标区对象的投影:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
ax = plt.axes(projection='3d')
Run Code Online (Sandbox Code Playgroud)
但是如何确定现有轴对象的投影呢?没有ax.get_projection,ax.properties不包含“投影”键,并且快速谷歌搜索没有发现任何有用的东西。
我有一个数据库表,其中保存文档的元数据。我现在的任务是获取包含文档类型的列表。文档类型在数据库表中并不唯一,但我当然希望它们出现在我的列表中。sql非常简单:
SELECT DISTINCT groupname, group_displayorder
FROM t_doc_metadata
ORDER BY group_displayorder;
Run Code Online (Sandbox Code Playgroud)
我了解到我可以使用投影从我的实体 DocMetadata 获取字段的子集。我解决了这个问题如下。我的实体:
@Entity
@Table(name="T_DOC_METADATA")
@Data
public class DocMetadata {
..............
@Column(nullable=false)
private String displayname;
@Column(nullable=false)
private Integer displayorder;
@Column(nullable=false)
private String groupname;
@Column(name="GROUP_DISPLAYORDER",
nullable=false)
private Integer groupDisplayorder;
@Column(name="METADATA_CHANGED_TS",
nullable=false,
columnDefinition="char")
private String metadataChangedTimestamp;
..........
}
Run Code Online (Sandbox Code Playgroud)
我的投影界面:
public interface GroupnameAndOrder {
String getGroupname();
Integer getGroupDisplayorder();
void setGroupname(String name);
void setGroupDisplayorder(int order);
}
Run Code Online (Sandbox Code Playgroud)
现在我认为通过将这些行添加到我的存储库中我会非常聪明:
@Query("select distinct d.groupname, d.groupDisplayorder from DocMetadata d order by d.groupDisplayorder")
public List<GroupnameAndOrder> findSortedGroupnames();
Run Code Online (Sandbox Code Playgroud)
遗憾的是,当迭代结果列表并调用getGroupname()时,结果为 null。 …
我们正在使用 Spring Data 并尝试使用子查询创建自定义查询,结果投影有一个数组和其他属性,我们的问题在于子查询数组。
\n\n public interface ProfesionalRepository extends JpaRepository<Profesional, Long> {\n\n @Query("SELECT p.id as idProfesional, " +\n " p.name as name, " +\n " p.surname as surname, " +\n " (SELECT a.descripcionIlt FROM Ausencia a WHERE a.profesional.id = p.id) as exclusionesCenso " +\n " FROM Profesional p ")\n List<ProfesionalCensoProjection> findCenso();\n}\nRun Code Online (Sandbox Code Playgroud)\n\n投影为:
\n\npublic interface ProfesionalCensoProjection {\n Long getIdProfesional();\n String getName();\n String getSurname();\n List<String> getExclusionesCenso();\n}\nRun Code Online (Sandbox Code Playgroud)\n\n我们收到这样的错误:
\n\nCaused by: java.sql.SQLException: ORA-01427: single-row subquery\nreturns more than one row\nRun Code Online (Sandbox Code Playgroud)\n\n … 我想创建一个基本表单组件,它将对所有其他表单有额外的控制。
例如,当用户想要关闭表单时,我想检查表单是否脏。
这是我的基本组件表单示例:
@Component({
selector: 'my-modal-form',
templateUrl: './modal-form.component.html',
styleUrls: ['./modal-form.component.scss']
})
export class ModalFormComponent implements OnInit, AfterContentInit {
@ContentChild(FormGroup, { static: false }) usersForm: FormGroup;
constructor() { }
ngOnInit(): void {
console.log(this.usersForm);
}
ngAfterContentInit() {
console.log(this.usersForm);
}
}
Run Code Online (Sandbox Code Playgroud)
这是用法示例:
<my-modal-form>
<form [formGroup]="profileForm">
<input type="text" formControlName="firstName" />
<input type="text" formControlName="lastName" />
</form>
</my-modal-form>
Run Code Online (Sandbox Code Playgroud)
所以这两个console.log电话都给了我undefined。在这里我想访问FormGroup实例,以便我可以检查它是否脏。
问题是 - 如何正确获取投影表单(FormGroup)?
下图是Michael Clark使用的概念图, https://m-clark.github.io/docs/lord/index.html ,用于解释洛德悖论以及回归中的相关现象。
我的问题是在这种背景下提出并使用的ggplot2,但它在几何和图形方面更广泛。
我想重现这样的数字,但使用实际数据。我需要知道:
y-xy-x投影到该轴上的值的其他表示形式。我的最小基本示例使用ggplot2,
library(ggplot2)
set.seed(1234)
N <- 200
group <- rep(c(0, 1), each = N/2)
initial <- .75*group + rnorm(N, sd=.25)
final <- .4*initial + .5*group + rnorm(N, sd=.1)
change <- final - initial
df <- data.frame(id = factor(1:N),
group = factor(group,
labels = c('Female', 'Male')),
initial,
final,
change)
#head(df)
#' plot, with regression lines and data ellipses
ggplot(df, aes(x = initial, y = final, …Run Code Online (Sandbox Code Playgroud) 我有一个IQueryable<SomePOCO>(LINQ-Entities查询,如果这很重要):
public class SomePOCO
{
public string ParentName { get; set; }
public string Name { get; set; }
public string Url { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
而我正在尝试投射到一个对象(匿名类型将是最好的,因为我只需要方法范围),它有2个属性:
public string ParentName { get; set; }
public ICollection<SimplePoco> { get; set;
Run Code Online (Sandbox Code Playgroud)
SimplePOCO如下:
public class SimplePOCO
{
public string Name { get; set; }
public string Url { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我这样做的原因是所有"SomePOCO"的im检索具有相同的ParentName,所以我只想要一次,而不是将线路带来相同的N次并做一次.First().
希望有道理.
最终结果是我应该能够这样做:
var parentName = result.ParentName; // string
var pocos = result.SimplePOCOs; // …Run Code Online (Sandbox Code Playgroud) G'day,
我有大量的lon/lat坐标,这些坐标位于CRS Australian Geodetic Datum 66/84(简称AGD66)中.我想将这些坐标从AGD66更改为WGS84,因为它们之间有大约200米的差异,我在WGS84中有其他坐标和图层.我试过这样做:
lon lat
147.1428 -43.49083
library(rgdal)
pts<-read.table(file.choose(),header=TRUE,sep=',')
# I first project the pts in their original CRS
pts66<-project(cbind(pts$lon,pts$lat), "+init=epsg:4202")
# Then to transform it to WGS84
pts84 = spTransform(pts66,CRS("+init=epsg:3033"))
Error in function (classes, fdef, mtable) :
unable to find an inherited method for function "spTransform", for signature "matrix", "CRS"
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么我得到这个错误,或者对如何我可以从AGD66这些坐标改变到WGS84有什么建议?感谢您的帮助.
干杯,
亚当
我正在尝试使用边条件(在MatLab中)从相机图片中的2D像素坐标重建3D坐标.我确实有外在和内在的相机参数.
使用同质变换,我可以将3D坐标从最初的世界坐标系转换为我的相机坐标系.所以我在变换矩阵R_world_to_Camera中有我的外部参数:
R_world_to_Camera = [ r_11, r_12, r_13, t1;
r_21, r_22, r_23, t2;
r_31, r_32, r_33, t3;
0, 0, 0, 1];
Run Code Online (Sandbox Code Playgroud)
对于内在参数,我使用了加州理工学院的"MatLab相机校准工具箱"并获得了以下参数:
Calibration results (with uncertainties):
Focal Length: fc = [ 1017.21523 1012.54901 ] ± [ NaN NaN ]
Principal point: cc = [ 319.50000 239.50000 ] ± [ NaN NaN ]
Skew: alpha_c = [ 0.00000 ] ± [ NaN ] => angle of pixel axes = 90.00000 ± NaN degrees
Distortion: kc = [ 0.00000 0.00000 0.00000 0.00000 …Run Code Online (Sandbox Code Playgroud) matlab projection intrinsics computer-vision 3d-reconstruction
如何使用mapproj包进行lambert-azimuthal等面积投影? http://cran.r-project.org/web/packages/mapproj/mapproj.pdf
有
azequalarea()等面积
和
lambert(lat0,lat1)conformal,lat0和lat1上的真缩放
Lambert-azimuthal等面积投影最接近的是什么?