Tag: vector

线交叉矩形 – 如何找到交叉点?

我在canvas上画一个矩形,从矩形的中心到坐标空间中的一个随机点画一条线。 现在,我想按行矩形内的长度截断行,以便行从矩形边开始。 我怎么能这样做? 例 矩形可以由2个点定义: Pstart(1, 3) , Pend(3, 1) 中心点可以计算为: P(2, 2) 现在画出从P(2, 2)到Q(10, 2) 。 我知道矩形的宽度是2,我可以告诉该行从P(4, 2)而不是P(2, 2) 。 当该点与XY轴之一不平行时,这会变得更复杂。 此外,矩形内部的长度对于对角线而言将是不同的量。 如何计算线点相对于矩形中心和线的终点的起始偏移? 可能我必须找到线穿过矩形的点,然后让线从交叉点开始。 但我怎么能得到这一点呢?

为什么在Java float比较中使用Float.floatToIntBits()?

在JBox2d中, Vec2.equals()存在以下代码: @Override public boolean equals(Object obj) { //automatically generated by Eclipse if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; Vec2 other = (Vec2) obj; if (Float.floatToIntBits(x) != Float.floatToIntBits(other.x)) return false; if (Float.floatToIntBits(y) != Float.floatToIntBits(other.y)) return false; return true; } 我想知道float int位转换函数的用途是什么,这里。 这是否提供了解决Java浮点数比较不准确问题的方法(如果可能的话)? 还是完全不同的东西? 我想知道它是否是epsilon方法的替代方案: […]

Java Vector或ArrayList for Primitives

Java API中是否有一个可扩展的数组类,它等同于Vector或ArrayList类,可以与原语(int,char,double等)一起使用? 我需要一个快速,可扩展的整数数组,并且将它们包装在Integer类中以便将它们与Vector或ArrayList一起使用似乎很浪费。 我的google-fu让我失望了。

使用swig生成std :: vector到java.util.Vector代码

我尝试用SWIG生成java代码 在MyList.h中,我声明了一个名为_list的自定义列表对象 List _list; 这个List类inheritance自vector class List : public vector 在业务类中(在C ++中),我返回一个自定义对象列表 List getMyList(){ …. return list; } 所以我想生成java代码,我可以将这个C ++ List检索为java.util.List或java.util.Vector。 在我的swig.i文件中,我无法管理如何体现 %typemap(jstype) List “java.util.Vector” namespace std { %template(CustomVector) vector; } 任何类型的帮助如何配置此swig.i模板文件或一些示例代码生成java.util.List / Vector返回函数将不胜感激。 谢谢。

SWIG(v1.3.29)生成的C ++到Java Vector类不能正常运行

我有一些本机C ++代码,我正在使用SWIG转换为Java,以便我的Java应用程序可以使用它。 特别是有一些函数返回std :: vector。 这是我的界面文件的片段: %include “std_vector.i” namespace std { %template(Vector) vector; %template(Matrix) vector<vector >; } %include “std_string.i” std_string.i和std_vector.i包含在我正在使用的SWIG构建中。 我的第一个惊喜是Java输出包含了SWIG的“自有”版本的Vector类(而不是使用java.util.Vector )。 我真正的问题是从这些函数返回的Vector似乎不起作用。 例如,我无法使用get() (有时会使程序崩溃)或size()函数返回负值来检索其内容。 我知道Vector包含数据,因为我编写了相同函数的’String’版本,它们简单地遍历Vector (返回原生C ++代码)并以逗号分隔的String值返回内容。 虽然这是一个有效的解决方法,但最终我希望这能够正常工作,因为我能够接收和操作Vectors 。 任何帮助/提示将不胜感激。