Tacview 纯C导出库(c89、c99可用)
由于项目需求在vs2010上过编,之前那版用不了。新msvc编译后的abi与早期不兼容,故重写一个纯C畅享版。
具体用法同上一篇一模一样,只是函数名改了一下
#pragma once
/* TacviewRender.h */
#ifndef TACVIEW_RENDER_H
#define TACVIEW_RENDER_H
#include <Windows.h>
//Author:LeoRanbom
/* 旋转方向枚举 */
typedef enum {
CLOCKWISE,
COUNTER_CLOCKWISE
} RotionalDirection;
/* 函数声明 - C89要求函数声明带void表示无参数 */
int TacviewRender_init(const char* path); //初始化文件
void TacviewRender_config(int begin_angle, RotionalDirection t_rotional_direction); //初始化航向角度坐标系
void TacviewRender_log(const char* message); // 日志写入,这个可以不使用
void TacviewRender_close(void); //关闭写入,这个也可以不适用
void TacviewRender_createTacview(void); // 给文件初始化tacview格式头
void TacviewRender_recordTime(void); //每一次大循环使用一次,记录时间
void TacviewRender_recordPlane(const char* id, double lon, double lat, double alt,
double roll, double pitch, double yaw,
const char* name, const char* color); //记录飞机
void TacviewRender_recordMissile(const char* id, double lon, double lat, double alt,
double roll, double pitch, double yaw,
const char* name, const char* color); //记录导弹
void TacviewRender_version(void); //输出测试版本信息
double TacviewRender_transferTo(double angle);
/* 在TacviewRender.h中添加函数声明 */
/* 记录导弹爆炸事件
* id: 导弹ID(如"A01004")
* lon,lat,alt: 爆炸位置的经纬度和高度
* roll,pitch,yaw: 爆炸时的姿态角
* color: 爆炸显示颜色
* radius: 爆炸半径
*/
void TacviewRender_recordExplosion(const char* id, double lon, double lat, double alt,
double roll, double pitch, double yaw,
const char* color, double radius); //导弹击中或脱靶调用。会渲染爆炸,并且将导弹模型消失处理
#endif /* TACVIEW_RENDER_H */
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 LeoRanbom
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果
