小编ali*_*ali的帖子

三维整数坐标的哈希函数

具有3D均匀网格,为了节省大型模型中的存储器,不需要保存空单元(不与任何对象重叠的单元).为了这个目的,我在c#中使用Dictionary.尽管性能已经降低,但这仍然比创建3D网格时出现异常更好.现在我的问题是找到一个快速哈希函数,将网格的3d整数坐标映射到唯一的数字.

我已经尝试过((x*73856093 + y*19349669 + z*83492791))%n,它并不总是生成一个唯一的数字.

math voxel geohashing

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

在界面中使用泛型

更新:

海因兹是对的.AutoCAD Polyline是引用类型,而不是结构.好点子.但我简化了场景,因为我在实际应用程序中处理的是一个AutoCAD对象,它是struct.所以请将两者都视为struct而不是引用类型.


我正在寻找正确的方法来应对这种情况,如果有人能够阐明或帮助我更好地理解,我将不胜感激.

数据访问层中有一个接口,有两个实现来处理两个不同的提供程序:AutoCad和Sketchup API.

interface IEntity
{
    void object GetPoly();
    void void   InsertPoly(object poly);
}

class AutocadEntity
{
    void object GetPoly()
    {
         //calling Autocad APIs
         return Autocad Polyline object
    }
    void InsertPoly(object poly){...}
}
Run Code Online (Sandbox Code Playgroud)

GetPoly的Autocad实现将返回Polyline对象,因为这是在Autocad API中定义为折线,而Sketchup将返回Face对象.

我已经将返回类型(和参数)定义为对象来处理这些不同的类型.成本是拳击/拆箱发生时的性能问题.并且它更大胆地显示返回/参数是object []的位置.

我首先想知道方法返回/参数类型泛型是解决方案,但我认为它不会是因为实现是特定于类型的.

c# generics boxing unboxing

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

如何在 Cuda 内核上启用 RT 内核?

通过阅读Wikipead 页面,我了解到 GeForce RTX 型号有 RT 核心和 Tensor 核心。我的问题是我的 Cuda 代码使用了哪些核心?我可以控制吗?

我有光线追踪内核并想从 RT 内核中受益?RT 核心是默认使用的还是有一个标志来启用它?

cuda

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

标签 统计

boxing ×1

c# ×1

cuda ×1

generics ×1

geohashing ×1

math ×1

unboxing ×1

voxel ×1