我有一个应用程序绘制三维地图视图标记显示各种功能的行.我正在将地图移植到OpenGL-ES架构,但是在解决如何显示虚线方面遇到了一些麻烦.
做了大量的谷歌搜索,我发现许多人提到了从OpenGL-ES中删除绘制虚线和多边形的想法,因为它们可以使用纹理三角形轻松模拟.这很好,但我找不到任何实际进行此仿真和/或描述所涉及步骤的人.
我尝试对这个概念进行原型设计时遇到的一个问题就是一个例子,即当它们走向地平线时,透视会挤压我的线条.使用LINE_STRIP,这不会发生,并且线条在地图中保持恒定的宽度.
关于如何在透视图中实现虚线恒定宽度线的任何建议都将非常受欢迎.
我有一个使用 JNI 库的 Android 活动,该库使用 netlink 命令来配置网络接口(在本例中为 socketcan 接口)。如果我运行该活动,网络接口配置将失败并显示来自 RTNETLINK的EPERM错误。失败的命令需要CAP_NET_ADMIN功能才能成功完成。这样运行的代码为根成功,并且还运行为根,然后限制该功能仅CAP_NET_ADMIN使用capset。
我向应用程序清单添加了以下权限,这给我的印象是我的进程将获得 NET_ADMIN 功能:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.NET_ADMIN" />
Run Code Online (Sandbox Code Playgroud)
这将进程置于inet和net_admin组中,但该进程未收到 CAP_NET_ADMIN 功能,导致 netlink 命令因 EPERM 而失败。
在我对这个主题进行的各种搜索中,我发现了应该应用该功能的提示。例如,来自http://elinux.org/Android_Security
#define GID Capability
AID_NET_BT_ADMIN 3001 Can create an RFCOMM, SCO, or L2CAPP Bluetooth socket
AID_NET_BT 3002 Can create a Bluetooth socket
AID_INET 3003 Can create IPv4 or IPv6 socket
AID_NET_RAW 3004 Can create certain kinds of IPv4 sockets??
AID_NET_ADMIN* 3005 …Run Code Online (Sandbox Code Playgroud) 我正在尝试运行rsync命令,将文件复制到新位置.如果我直接运行rsync命令,在命令行上没有任何参数扩展,rsync就能达到我的预期
$ rsync -amnv --include='lib/***' --include='arm-none-eabi/include/***' \
--include='arm-none-eabi/lib/***' --include='*/' --exclude='*' \
/tmp/from/ /tmp/to/
building file list ... done
created directory /tmp/to
./
arm-none-eabi/
arm-none-eabi/include/
arm-none-eabi/include/_ansi.h
...
arm-none-eabi/lib/
arm-none-eabi/lib/aprofile-validation.specs
arm-none-eabi/lib/aprofile-ve.specs
...
lib/
lib/gcc/
lib/gcc/arm-none-eabi/
lib/gcc/arm-none-eabi/4.9.2/
lib/gcc/arm-none-eabi/4.9.2/crtbegin.o
...
sent 49421 bytes received 6363 bytes 10142.55 bytes/sec
total size is 423195472 speedup is 7586.32 (DRY RUN)
Run Code Online (Sandbox Code Playgroud)
但是,如果我将过滤器参数括在变量中,并使用该变量调用该命令,则会观察到不同的结果. rsync复制了我不期望的许多额外目录:
$ FILTER="--include='lib/***' --include='arm-none-eabi/include/***' \
--include='arm-none-eabi/lib/***' --include='*/' --exclude='*'"
$ rsync -amnv ${FILTER} /tmp/from/ /tmp/to/
building file list ... done
created directory /tmp/to
./ …Run Code Online (Sandbox Code Playgroud)