1. cad阵列快捷键命令
cad阵列快捷键命令如下:
ALT+TK 如快速选择。
ALT+NL 线性标注 ALT+VV4 快速创建四个视口。
ALT+MUP提取轮廓。
Ctrl+B: 栅格捕捉模式控制(F9)。
Ctrl+C: 将选择的对象复制到剪切板上。
Ctrl+F: 控制是否实现对象自动捕捉(F3)。
CAD常用快捷键命令:
平移,P【P、PAN】。
打印,PRINT【PR、PRI、PRIN、PRINT、PLOT】。
直线,L【L、LINE】。
多段线, PL 【PL、PLINE】。
圆弧,ARC 【A、ARC】。
圆,C【C、CIRCLE】。
矩形,REC 【REC、RECTANGLE】。
椭圆,EL 【EL、ELLIPSE】。
正多边形,POL 【POL、POLYGON】。
2. cad快捷键命令大全一览表
cad快捷键命令大全一览表如下:
ALT+TK 如快速选择。
ALT+NL 线性标注 ALT+VV4 快速创建四个视口。
ALT+MUP提取轮廓。
Ctrl+B: 栅格捕捉模式控制(F9)。
Ctrl+C: 将选择的对象复制到剪切板上。
Ctrl+F: 控制是否实现对象自动捕捉(F3)。
CAD常用快捷键命令:
工具栏命令:
平移,P【P、PAN】。
打印,PRINT【PR、PRI、PRIN、PRINT、PLOT】。
直线,L【L、LINE】。
多段线, PL 【PL、PLINE】。
圆弧,ARC 【A、ARC】。
圆,C【C、CIRCLE】。
矩形,REC 【REC、RECTANGLE】。
椭圆,EL 【EL、ELLIPSE】。
正多边形,POL 【POL、POLYGON】。
3. pri文件可以删除吗
当进行中大型Qt项目研发时,在各个子项目的pro文件中经常会出现重复配置。为了处理这个问题,Qt提供了另外一个项目配置文件:pri文件。在pri文件里,可以编写用于各个子项目的公共变量,还可以配置各种公共的编译选项、配置各种公共路径。本节将以常用关键字(见表2-3)为线索,介绍pri文件的各种用途。
表2-3 pro和pri文件常用关键字
关键字(或关键字类型)
含义
include
在pro中引入某pri文件
环境变量
在pri中使用环境变量
变量
在pri中定义与使用变量
函数
pri中提供的常用函数
unix/win32
用来定义在不同平台下构建项目时的配置项分支
DEFINES
在pri中定义宏
CONFIG
项目的配置参数
QMAKE_CXXFLAGS
配置编译标志
下面分别进行介绍。
1.include
include用来在pro或pri中引入某pri文件。
语法:include (pri文件全路径名)
比如:
include ($(TRAINDEVHOME)/src/gui_base.pri)
注意:
(1)include后面有空格。用括号把pri文件名括起来。
(2)pri文件路径中的目录分隔符用“/”,请不要使用“\”。
(3)pri文件只能被另一个pri文件或pro文件引用,不能在.h或.cpp文件中用#include语句引用pri文件。
2.环境变量
有时在构建项目时会碰到如下问题:将项目编译为32位还是64位,编译成Debug版还是Release版等。这可以通过定义环境变量来解决。那么,在pri文件中怎样使用这些环境变量呢?使用环境变量的语法如下:
$$(环境变量名称)
下面看一下对环境变量TRAINDEVHOME的使用。该环境变量分别用来描述gui_base.pri的文件路径以及ks02_04项目的OBJECT_DIR配置项的值。
代码清单2-14
include ($$(TRAINDEVHOME)/src/gui_base.pri)
OBJECTS_DIR = $$(TRAINDEVHOME)/obj/chapter02/ks02_04
3.变量与环境变量
除了环境变量之外,有时候为了方便还可以自定义一些变量。比如,Qt的isEmpty()函数不识别环境变量,因此可以通过变量来解决这个问题(见代码清单2-14)。
代码清单2-14
DEVHOME = $$(TRAINDEVHOME)
isEmpty(DEVHOME) {
error('TRAINDEVHOME'环境变量必须被定义.)
}
isEmpty()函数不识别环境变量,但它可以识别自定义的变量,所以在代码清单2-14中定义了DEVHOME变量。这样isEmpty()就可以通过DEVHOME变量间接对TRAINDEVHOME这个环境变量的取值进行判断。如果未定义TRAINDEVHOME环境变量,编译器就会报错。
变量的使用语法同环境变量不同,使用变量时不加括号。 变量的使用语法:$$变量名。比如:
TEMPDIR = $$(TRAINDEVHOME)/obj/chapter02/ks02_04
OBJECTS_DIR = $$TEMPDIR
对环境变量和变量的使用做一下说明:
(1)在一行语句中,所引用的变量或环境变量的总个数不能超过1个。
错误的写法:
CHAPTER = chapter02
TEMPDIR =
(TRAINDEVHOME)/obj/
CHAPTER/ks02_04
正确的写法:
TEMPDIR = $$(TRAINDEVHOME)/obj/chapter02/ks02_04
(2)使用环境变量的语法跟使用变量的语法不同(环境变量名要用括号)。
环境变量语法: $$(环境变量名)
变量语法: $$变量名
4.函数
在代码清单2-14中,介绍了isEmpty()函数、error()函数,实际上Qt还提供了一些其他函数。
1)isEmtpy()
isEmtpy()函数用来判断一个变量是否为空值,比如:
DEVHOME = $$(TRAINDEVHOME)
isEmpty(DEVHOME) {
error('TRAINDEVHOME'环境变量必须被定义.)
}
2)equals(a, b)
equals(a, b)函数用来判断某个变量的值是否与指定值相等。代码清单2-15表示如果BUILDTYPE的值是debug则执行标号①处的代码。
代码清单2-15
BUILDTYPE = $$(TRAINBUILDTYPE)
equals(BUILDTYPE, debug){
CONFIG += debug ①
CONFIG -= release
}
3)error()
error()函数用来输出错误信息,并终止当前构建过程,比如:
isEmpty(DEVHOME) {
error('TRAINDEVHOME'环境变量必须被定义.)
}
4)contains(x, y)
contains(x, y)函数用来判断一个变量x是否包含字符串y。代码清单2-16表示如果TRAIN_QMAKESPEC的值包含“hpux.”,则执行花括号中的配置。
代码清单2-16
contains(TRAIN_QMAKESPEC, hpux.* ) {
# HPUX下全面支持C++
QMAKE_CXXFLAGS *= -Aa
LIBS += -lrt
}
5)unix/win32
unix和win32用来配置不同平台下的配置项。如代码清单2-17中Linux、UNIX平台均使用unix配置项,而Windows平台使用win32配置项。建议所有的{都跟配置项关键字在同一行。比如,标号①处unix后面的{要跟unix写在同一行。
代码清单2-17
unix{ ①
contains( TRAIN_QMAKESPEC, g++ ) {
CONFIG *= precompile_header
}
}
#WIN32下声明使用预编译头文件
win32{
CONFIG *= precompile_header
}
6)DEFINES
DEFINES用来在pro、pri文件中定义宏。这些宏可以在源代码中使用,比如代码清单2-18中标号①处、标号②处、标号③处定义的unix、__unix、WIN32、TRAIN_64。
代码清单2-18
#UNIX下编译设置
unix{
#表示Unix或Linux操作系统
DEFINES *= unix __unix ①
}
#WIN32下编译设置
win32{
#表示WINDOWS操作系统
DEFINES *= WIN32 ②
}
equals(BUILDBIT,64){
DEFINES *= TRAIN_64 ③
}
注意:标号①处、标号②处、标号③处的DEFINES后面的*=表示累加。
代码清单2-18中定义的unix、__unix、WIN32、TRAIN_64,可以在源代码中使用。比如:
// dialog.cpp
#ifdef __unix
...
#endif
#ifdef TRAIN_64
...
#endif
7)CONFIG
CONFIG配置项在pri中与pro中用法一样。CONFIG常用的选项有:
CONFIG += console qt debug release thread warn_on
下面分别进行介绍。
(1)console表示本项目是命令行程序,在启动本项目的目标程序时会启动一个终端(命令行)。
(2)qt表示本项目要加载Qt的库,链接时要链接Qt的类库。
(3)debug和release分别表示将项目构建成Debug版本还是Release版本。
(4)thread表示程序是否启用多线程。如果没有thread选项,项目将无法使用多线程。
(5)warn_on表示是否显示编译警告。因为有些编译警告还是很重要的,所以建议开启该配置项。如果不关注或者不处理编译警告,也有可能导致程序运行时异常。
8)QMAKE_CXXFLAGS
QMAKE_CXXFLAGS用来为编译器指示一些编译标志,比如:
# 去掉strcpy等编译警告
QMAKE_CXXFLAGS *= -wd499
# ui 生成的文件使用 utf-8 编码,编译时产生4819 警告,因此去掉
QMAKE_CXXFLAGS *= -wd4819
在进行中大型项目开发时经常会用到pri文件。如果仅仅编写一个独立的EXE模块,那么pri文件可能不会发挥太大作用,因为可以把pri中的配置项直接编写到pro文件中。但是建议进行软件研发时要进行标准化操作,比如:建立一套pri文件并在团队的所有项目中使用,那么在建立新项目时将会非常方便。
现在,回顾一下本节的主要内容:
(1)pri文件路径中的目录分隔符要用“/”,请不要使用“\”。
(2)pri文件只能被pro文件或另一个pri文件引用。
(3)使用环境变量的语法跟使用变量的语法不同:
使用环境变量的语法: $$(环境变量名)
使用变量的语法: $$变量名
(4)在pro或pri中,Qt提供了一些函数来进行判断或者输出信息,比如 isEmpty()、error()等。
(5)在使用CONFIG的配置项进行判断时,建议所有的{跟配置关键字在同一行,不要换行。
(6)在pri中定义的宏可以在代码中使用。
4. cad常用快捷键命令表
cad常用快捷键命令表如下:
ALT+TK 如快速选择。
ALT+NL 线性标注 ALT+VV4 快速创建四个视口。
ALT+MUP提取轮廓。
Ctrl+B: 栅格捕捉模式控制(F9)。
Ctrl+C: 将选择的对象复制到剪切板上。
Ctrl+F: 控制是否实现对象自动捕捉(F3)。
CAD常用快捷键命令:
工具栏命令:
平移,P【P、PAN】。
打印,PRINT【PR、PRI、PRIN、PRINT、PLOT】。
直线,L【L、LINE】。
多段线, PL 【PL、PLINE】。
圆弧,ARC 【A、ARC】。
圆,C【C、CIRCLE】。
矩形,REC 【REC、RECTANGLE】。
椭圆,EL 【EL、ELLIPSE】。
正多边形,POL 【POL、POLYGON】。
5. 在用IDLE写python时,比如说输入pri,系统马上会在pri下方自动显示一个print
这是命令模式,输入一行执行一行。还有一个程序文件模式,是另外开窗口的,你找找相应的菜单。
6. 不联网可以单机运行ros 程序吗
可以的。
安装完毕后,输入int>(>代表回车)pri>通过命令,可以看到两个网卡首先通过命令来改变网卡名称。让自已更容易区分内外网卡。set0>set1>修改好了。
现在开始设置IP先输入/>本命令用来回到起始命令符set>a>a>lan>如果你已经改好网卡名,这里会显示lan,如果未改这会显示ether1,也就是从网卡向下数的第一个网卡。
们把它当做内网网卡。>直接回车192.168.3.1/24>这的意思是你ROS的IP为了不与宽带网段冲突。所以用192.168.3.1(你也可以自己随便设置,为了不出意外请完全按照本教程的设置)a>wan>192.168.0.75/24>
这里就用到了宽带一个没人用的IP了,假设为250,也就是设为外网。(这里是一个重点,在这之前你先要找到这台75号机子,然后将它开启,用MAC扫描器扫出他的MAC地址记在文本上,然后将它关机.)g>192.168.0.1>这的意思是外网的网关。
们现在是用内网的一个IP来做外网,当然网关也就是宽带原来的网关了。
宽带的网关内网用的是1,所以就写1了xx(XX代表返回起始处)(这里又是关键,成功与否就看这一步了)继续看输入:/>本命令用来回到起始命令符interfaceethernetpr>这条命令是查看当前两个虚拟网卡的MAC地址(这时你会看到lan网卡前面有个数字为0{如果你全按照的步骤来做,此处就是0},后面的命令中需要用到)interfaceethernetset0mac-address=00:11:22:33:44:56>注释:把编号为2的网卡的MAC地址改为:00:11:22:33:44:5600:11:22:33:44:56是MAC地址,此处要改成你扫出来的75号机的MACinterfaceethernetpr>再打一遍查看命令,查看是否改成功了.改成功以后就可以现在你就可以在宽带再另开一台机器。然后把本地连接的网关改成192.168.3.1ip为192.168.3.x,x代表任意IP。(注意,要在没装收费系统的机子上,最好是纯净的系统上.或者你直接在本机虚拟机上装一个XP.)这个网段里只有你这一台,改什么也不会冲突。
可以的话先在CMD下ping下192.168.3.1ping通就代表你差不多成功了然后打开浏览器,输入ROS的地址192.168.3.1打开了吧,下载winbox设置路由。因为们内外网的IP和网关都已经设置好了。现在们只要做一步,设置共享上网。IP--Firewall-nat--选择“+”号--Action-masquerade这样就OK了。