我正在寻找构建一些硬件组件来与微软飞行模拟器接口,希望它能够显示当前占用屏幕空间的东西(高度计,空速指示器,无线电等)
有没有办法在FlightSim运行时读取它们所具有的值,以便我可以将外部硬件组件与它们应该在屏幕上的内容同步?优选地相对较快,因此没有太多滞后.
有没有办法使用非多点触控启动机器测试应用程序的多点触控功能?我想在运行时模拟用户输入以进行缩放,缩放和旋转.
这适用于用C#编写的WPF应用程序.
我正在运行主要受CPU速度限制的模拟代码.我对将数据输入/输出到用户界面不感兴趣,只需在计算时将其保存到磁盘即可.
什么是最快的解决方案,可以减少开销?输入输出流?printf的?我之前读过printf更快.这取决于我的代码,如果没有分析,是不可能得到答案的?
这将在Windows中运行,输出数据需要采用文本格式,制表符/逗号分隔,格式/精度选项主要用于浮点值.
游戏或图形行业中的传统物理模拟基本上是离散的.但是现在的引擎如box2d或bullet3d实现了连续物理模拟.我知道离散模拟的基本原理,但我不知道连续模拟.这对我来说是神奇的,使用魔法是艰难而危险的.因此,我希望通过理解它们将魔法变成工具.
所以我想知道:(1)这些连续物理模拟的基本思想和实现原理是什么?(2)这个想法可以推广到其他类型的离散模拟吗?请让我理解这一点!
我一直在寻找创建某种物理模拟的不同方法.我想要做的是在一段时间内在各种力的作用下对身体的运动进行3D建模.我原本看着使用物理引擎(Bullet)和3d引擎(Irrlicht)在c ++中编写代码.但是,我注意到Blender已经允许人们进行物理模拟,因为Bullet与它集成(如果我错了,请纠正我).这似乎可以让我更容易按照我想要的方式设计模拟(使用Blender广泛的GUI).
我的问题是我想使用模拟的结果(基本上是每个时间步的x,y,z,俯仰,滚动,偏航)来输入c/c ++代码(如果它更容易用于其他语言)这个).这可以用Blender完成吗?有没有一个更好的软件包,我忽略了?谢谢,任何建议表示赞赏.
我正在制作类似于Polyworld的东西,这意味着我将模拟虚拟世界,小爬行动物在那里奔跑,吃饭和进化.我用Node.js制作它,我计划使用物理和神经网络,但我不确定更新世界的最佳方法是什么,更具体地说,如果更新函数接收增量时间作为参数,或者每次做同样的事情,独立于他们最后一次被召唤的时间?这两种方式有什么好处?
编辑: 我反对不断更新的一点是我想要实现某种间隔,例如,每个20个模拟秒产生一个食物块.如果dt不同于1(或1的一小部分),这将永远不会正常工作.
然后,如果我使用离散更新,其中更新不关心已经过了多少时间,我将无法"减慢时间".当我在强大的服务器上工作并在浏览器中渲染时,我认为更新会经常发生,我需要一种减慢时间而不影响模拟的方法,所以我可以看到发生了什么.
我正在进行一个2d游戏/模拟,其中行星由围绕恒星的核心轨道周围的块组成.它们也会自行旋转,它们围绕恒星的旋转和它们的个人旋转都具有随机的速度.
该程序记录光线何时击中哪个块,并且它们的温度随着时间的推移而变化.它还根据温度随时间不同地对块进行着色.热块看起来更红,冷块看起来更蓝.
在下面的屏幕截图中,两颗行星都围绕恒星逆时针旋转轨道,顺时针旋转.左/下行星缓慢旋转,而顶/右行星旋转得更快.我将它们称为行星A(图1-3中的左/下)和行星B(图1-3中的右/上).
第一个截图是在启动程序后尽可能快地拍摄的:
](https://i.stack.imgur.com/xw9Ap.png)
行星A发展得非常快(并且保留了)一个梯度,显示出一整天都在阳光下一侧的温暖块,以及黎明刚刚升起的寒冷块.行星B移动得如此之快,似乎没有真正的温度差异可以发展.
大约一分钟后拍摄了第二张和第三张截图,并且相隔只有几秒钟才能更好地展示星球B上奇怪的"条带":
![[图片2]](https://i.stack.imgur.com/D2V52.png)
![[图3]](https://i.stack.imgur.com/LZUcy.png)
从观看它旋转开始,B行星似乎已经形成了永久冷和永久热的一面,尽管其快速(和理论上均匀)旋转.
如果有足够的时间,似乎所有的行星都采用这种奇怪的条带,其中一侧是热的,一侧是冷的,无论旋转如何.

(在上面的截图中,进一步说明,行星A位于右侧,行星B位于中间位置.)
而最奇怪的部分是,如果我让它运行更长时间,大多数行星采用行星A最初显示的合理模式,而有些行星继续奇怪的条带模式.
我正在编写一个演示Web应用程序,通过我的公司平台跟踪多个设备.我有应用程序工作,但需要一个csv文件,将模拟在地图上移动的设备,就好像它们是一个连接到汽车的跟踪器.模拟器通过每秒读取1行数据(1 lat/lng点)来工作.下面是一个文件的前几行示例,如果这些点不是分散在美国各地(SclId是设备名称),则可以使用.
SclId Latitude Longitude
HAT-0 44.968046 -94.420307
HAT-1 44.33328 -89.132008
HAT-2 33.755787 -116.359998
HAT-3 33.844843 -116.54911
HAT-4 44.92057 -93.44786
HAT-5 44.240309 -91.493619
HAT-0 44.968041 -94.419696
HAT-1 44.333304 -89.132027
HAT-2 33.755783 -116.360066
HAT-3 33.844847 -116.549069
HAT-4 44.920474 -93.447851
HAT-5 44.240304 -91.493768
Run Code Online (Sandbox Code Playgroud)
如果我有一些可以通过鼠标点击创建模拟数据的东西,它将节省我很多时间创建另一个程序,要求我使用设备驱动并将数据记录到CSV.任何帮助/建议将不胜感激.如果您不明白这个问题,请要求澄清!
Java Card小程序中的一个典型错误是将持久性内存用于应该在RAM中的临时变量.
这些错误可能会减慢applet的速度并导致一些严重的问题(例如EEPROM损坏的症状).
单元测试很难揭示这些错误.单元测试将applet作为黑盒子访问,他们所能做的就是检查给定输入的输出.当然,它们可以测量时间并报告可疑的慢速命令,但是覆盖持久存储器中的单个字节几乎与覆盖RAM中的单个字节的时间相同.
有没有办法摆脱这些错误(编码时要小心)?我可以以某种方式检测EEPROM更改以及在处理特定APDU时完成了多少次更改?
当然,一个好的模拟器可以完成这项工作.但是,JCardSim(www.jcardsim.org)和恩智浦JCOP工具似乎都远远无法报告EEPROM使用情况统计数据.
你知道其他任何可以帮助我的工具或测试技术吗?
我研究了Jerry Tessendorf撰写的"模拟海水"文章,并尝试编制统计波模型,但我没有得到正确的结果,我不明白为什么.
在我的程序中,我只尝试在时间上创建波高域,t = 0而不进行任何进一步的更改.执行我的程序后,我没有得到我所期望的:
这是我的源代码:
clear all; close all; clc;
rng(11); % setting seed for random numbers
meshSize = 64; % field size
windDir = [1, 0]; % ||windDir|| = 1
patchSize = 64;
A = 1e+4;
g = 9.81; % gravitational constant
windSpeed = 1e+2;
x1 = linspace(-10, 10, meshSize+1); x = x1(1:meshSize);
y1 = linspace(-10, 10, meshSize+1); y = y1(1:meshSize);
[X,Y] = meshgrid(x, y);
H0 = zeros(size(X)); % height field at time t …Run Code Online (Sandbox Code Playgroud) simulation ×10
c++ ×2
blender ×1
c ×1
continuous ×1
csv ×1
cuda ×1
debugging ×1
demo ×1
hardware ×1
javacard ×1
javascript ×1
maps ×1
matlab ×1
multi-touch ×1
node.js ×1
performance ×1
physics ×1
principal ×1
simulate ×1
simulator ×1
smartcard ×1
unit-testing ×1
windows-7 ×1
wpf ×1