分类:C/C++
评论:No Comments
作者:小A
发布时间:2023-08-01
阅读:2615
碰到一个奇怪的问题,通过localtime生成本地日期时间打日志,结果日志会出现非北京时间,好奇去查了一个,结果发现此函数是非线程安全函数,原来代码如下:
int32_t utc2datetime(uint32_t utctime, SVC_TIME* out_pTime)
{
time_t rawtime;
struct tm * p;
rawtime = utctime;
p = localtime(&rawtime);
out_pTime->unYear = (uint32_t)(1900 + p->tm_year);
out_pTime->unMonth = (uint16_t)(1 + p->tm_mon);
out_pTime->unDay = (uint16_t)p->tm_mday;
out_pTime->unHour = (uint16_t)p->tm_hour;
out_pTime->unMinute = (uint16_t)p->tm_min;
out_pTime->unSecond = (uint16_t)p->tm_sec;
out_pTime->unWeek = (uint16_t)p->tm_wday;
return 0;
}
localtime,用来获取系统时间,原型在time.h头文件中,定义如下:
struct tm *localtime(const time_t *timep);
阅读剩余部分...
分类:Javascript
评论:No Comments
作者:小A
发布时间:2023-07-13
阅读:723
浏览器定位是可以使用javascript直接获取当前你的网络所在的位置信息,主要方法为
navigator.geolocation.getCurrentPosition(function(position){});
其中`position`信息中包括以下内容:
经度 : position.coords.longitude
纬度 : position.coords.latitude
精度 : position.coords.accuracy
高程 : position.coords.altitude
高程精度 : position.coords.altitudeAcuracy
方向 : position.coords.heading
速度 : position.coords.speed
时间戳 : position.timestamp
阅读剩余部分...
分类:PHP
评论:No Comments
作者:小A
发布时间:2023-06-21
阅读:1495
使用ThinkPHP6开发接口时会遇到前置过滤或判断,我们可以使用中间件功能。以下是单应用模式示例:
创建中间件
第1种方式,命令行方式:
php think make:middleware Filter
第2种方式,手动在`app`目录下创建`middleware`文件夹,再创建中间件类:
<?php
namespace app\middleware;
class Filter
{
public function handle($request, \Closure $next, $name)
{
//to do
return $next($request);
}
}
阅读剩余部分...
分类:走进地图
评论:No Comments
作者:小A
发布时间:2023-05-19
阅读:2540
随着Web技术的不断发展,WebMap的功能和应用也越来越丰富和多样化,地图不再仅仅是2D的显示,更多需要3D的显示效果和交互。这个时候就需要地图数据不能以图片方式出现了。
上一篇文章中提到了地图的瓦片,一般瓦片都是图片格式,但是在3D Web地图下图片格式就无法更好的显示3D效果,这就出现在矢量瓦片(Vector Tiles)格式。与传统的栅格瓦片(Raster Tiles)相比,矢量瓦片以矢量数据形式存储和传输地理信息,具有许多优势和应用潜力。
矢量瓦片的特点和优势:
- 数据灵活性:矢量瓦片存储的是矢量数据,例如点、线、面等地理要素,而不是预先渲染的像素图像。这意味着矢量瓦片可以根据需要进行动态样式化、交互和分析,提供更灵活的地图呈现方式。
- 高清晰度和可伸缩性:矢量瓦片具有无限的分辨率,可以实现高清晰度的地图显示。无论是在高分辨率屏幕上还是缩放到细节层级,矢量瓦片都能提供清晰、锐利的地图效果。
- 网络传输效率:相比栅格瓦片,矢量瓦片的数据量更小,因为它们只存储地理要素的几何信息和属性,而不是像素图像。这使得矢量瓦片在网络传输中具有更高的效率和更快的加载速度。
- 动态样式化:使用矢量瓦片,开发者可以通过动态样式表对地图进行实时的样式化。这意味着可以根据数据属性、用户交互或其他条件来改变地图的样式,实现个性化的地图显示。
- 数据分析和查询:由于矢量瓦片存储的是原始地理数据,可以直接在客户端进行数据查询和分析操作。这为开发者提供了更多的空间分析和地理处理的能力。
阅读剩余部分...
分类:走进地图
评论:2 Comments
作者:小A
发布时间:2023-05-10
阅读:4979
全球的电子地图要展示在用户的浏览器上,那体量就太大了,在大比例尺下,可能全球用一张图片就可以看到,在小比例尺下,用一张图片就无法显示了,在web地图之前都是软件如Arcgis等来显示地图的。互联网的出现就出现了web地图的解决方案:通过把地图生成图片的方式来在web端显示地图图片。
Google地图是最早使用WebMercator标准来实现web地图的,也让WebMercator成为了web地图的标准了,WebMercator只是把地球投影成一个固定米值大小的范围,工程师把固定的范围成对应到不同级别的固定像素的图片上,这样成了不同级别的地图图片。

阅读剩余部分...
最新评论