工作日志3月
时间:2011-05-14 来源:沉默飞翔
3月16日 星期三
1昨天还好使的文件,今天不好使,排查原因,项目中没有加载…………
2插入底座的时候注意,在底座1和3中,有一个X是从图中读取的
3底座插入出现问题,查找中。。。。已解决:因为没有将int格式变量转换为Cstring格式。。这里要用.format
4下一步,要将底座独立出来变成一个块,初步设想直接驱动插入就行
5直接换底座位置,发现move的时候。。会发生问题,只移动主体,不移动底座。。
6将底座命名出一个实体。。。然后,一起移动
7写ini文件,使其能够保存上次的选择,,,,,现在大部分功能好使。。。2个单选那里不好使,初步怀疑是程序里没有写0选项……已解决:的确如此
8 增加底座重量。。。。
9 没有添加 比较。。。底座高度X不能小于减速器的整体高度 添加完毕
10 底座重量运算,剩下计算体积问题了~~~~
3月17日 星期四
1将重量计算添加进入
2驱动遮挡问题……暂时没有成功
3在界面上要增加螺栓连接……加成什么样子的。。。之前做过了。。。集成在机械工程师中,怎么拿出来呢?
4 VC6编写的代码在VS2005上,编译不成功,并且知道了a\b互换,其实可以不用引入第三个参数的,a = a+b; b = a-b; a = a-b;经典啊……
3月18日 星期五
1 重量应该四舍五入吧。。。
2图层问题上,就是当前层,所以绘画的时候,要注意改变当前层。应该加上命令,画完返回当前层,不像现在这样,画完直接停留在目标层。。。。另外要求插入线形与当前层线形一致……解决问题
3为什么先插入俯视图,就没事,而先插入侧视图,DIM层就会变成绿色?…………打散主体之后,颜色就会恢复过来。这么说是轴端的驱动,弄得……这么说是变成整体块弄的……整体块代码探察中……已解决:选择集被替代,在选择集之前,选择一下图层就好了。
4暂时还没有添加,输入框不可以为0 的代码;驱动遮挡还没有做出来;扩展数据还没有计算好,没有图框,(机器问题);
5重量计算有些不同,重新核实了一下,没有问题。不同之处在于:我加了小立板,所以重了。。。。
3月21日 星期一
1立板厚度与盖板厚度,是根据用户对不同减速机型号的需要而改变的?需要单独拿出来列成一个。。。这里就需要用到表格了。。。还需要从表格中读出数据,改变表格中数据以后,还需要能够保存数据。。。。
2仔细查询之前表格中的数据是如何写入的,看看能不能用INI文件来写入,如果可以的话,这样,三行就可以写进去了,进而就可以让表格中的数据随着修改而修改源文件了,也能够达到一次修改很多行的目的……
3表格插入成功,理解了表格,然后跟INI文件结合了起来,能够默认,随时读入,读出,
4CAD总是因为插入了表格而出错……解决:忘记了表格指针最后需要DESTROY……无奈中……
5将ini文件与主程序的INI文件,结合了起来,取消了主程序中INI文件立板厚、盖板厚2个选项,能够直接从新出现的窗口中读出,将2个窗口连接了起来。
3月22日 星期二
1在表格中添加组合下拉框,未添加成功,不知道下拉框是添加到什么位置,一双击则出错,内存冲突……
2指针在前面需要初始化一次,否则会出错……刚刚内存冲突的问题,就是因为弄了2个指针,然后一个指针初始化了,一个没有初始化,在程序中,2个指针又指着同一个地方,所以会出现内存冲突的毛病。写的代码还是太少了,总是会忽略一些小地方,比如像:没有加入相应的头文件、指针没有初始化、指针没有DESTROY在最后,这些都会导致程序出现错误。
3发现了一个问题,先打开INI文件,然后运行程序,程序中有修改INI的过程,然后关闭程序,这个时候INI显示的文件,其实已经被改变了,然后关闭INI文件,却没有出现是否保存文件,然而等到下次打开INI文件的时候,里面的数据已经发生了改变……这么看来,打开一个文件,是打开到内存中,没有进行任何操作。。则不会重新保存到硬盘位置,这样就能解释通了。。。。
4加了一系列选项口,需要在没有点击该选项的时候,选项后面的组合框全部为FALSE,有了螺栓的驱动,但是,没有确定BASE点,需要插入好多螺栓,所以,BASE点,需要计算,那么后期的呢?以后螺栓是不是会改变位置的呢?
5隐藏窗口问题实现,还剩下稍微初始化一下就可以,初始化全选就可以了。。
3月23日 星期三
1在初始化复选框中,全选时,发生了问题,排查问题中……数组溢出……本来就应该只有6个选项,结果我弄了个7.。。。。最后一项溢出,所以发生的问题。。。呃……
2实现了SOCKET编程的简单对话框小程序、回去还得继续找代码研究,否则还是忘……一个相应的类型最少写3遍才能够初步掌握……
3插入螺栓等的BASE点,是直接在程序中运算出来的?如果运算出来的,那底座以后发生改变的时候,怎么办?插入的时候,DAT文件是读名称一样的?
4写了3个函数,第一个函数是插入螺栓的一个部件;第二个函数是通过BOOL来判断该插入哪个,不该插入哪个,同时,知道插入名称;第三个函数是运算BASE点,这样以后想改哪里就可以直接去改。。
3月24日 星期四
1在写BOOL判断函数时,发现,还得计算高度值,这样才好计算BASE点,不能写到INI文件中,这样更加麻烦,相当于重新遍历了一次,所以,还是应该写在插入部件函数中,多加一个变量,这样也许会好点……不行,变量的名称不一样,还是写不了,所以,现在还是去写到INI文件里吧,在底座那个对话框里面,确定保存……不行,这样不行,因为需要用到OK之后的数据,所以,还是应该写回到减速机程序中,OK里好了
2扩展实体数据。。。迄今为止还没有接触过……估计等到后期,还是需要改程序的……写个函数。。。怎么感觉还不如直接分开写了呢
3造成了无限循环的函数……就是因为选择螺栓的问题。。。。。看来只好单独写一个螺栓 不需要,刚才出错是因为写错了……没有无限循环的
4在驱动螺栓的时候,会发生情况,因为中心高~现在的情况是螺栓和螺母画出来都是最下面的那一行。。。。。两个垫片都是正常的……问题找到了,在插入之前,把前面的标识符处理过了,在插入函数内,标识符处理过了,所以插入的都是错的,而垫片因为本来就需要处理过的标识符,所以,垫片都是正常的
5现在主视图的螺栓可以随意插入了,只要再弄一下BASE点就可以了。。。但是接下来的问题出现了,在侧视图和俯视图中,可能要重新写一些函数来运行。。。。扩展实体数据方面:在插入函数后,写扩展实体数据,这个倒是不着急。。。现在需要实现的是:
1)提取DAT文件中的重量,
2)把底座对话框中的m_check能够保存下来,想保存并且实现,就需要赋值及事件发生
3)底座中的标注代号、材料都需要保存下来,并且根据标注代号,来选择插入的螺栓以及垫圈等的重量
3月25日 星期五
1整理昨天提出的问题,对m_check进行保存,引进了一个新的CString变量,使其能够保存。
2呃。。。以后随时保存。。刚刚一下。。全没了……………………
3现在在实现,在程序中出现的螺栓和螺母距离的实现,目前程序中是死的,需要修改,一共有3处,需要用到,所以,准备单独写一个函数,来实现,这种功能,更近一步,能够把之前需要从ini文件中读取位数,然后去dat文件中取值的地方,全用这个函数来实现。。
三视图需要插入的-1,-2,-3是不同的,随便设一个判断一下
全部完成
4现在就剩下提取重量,螺栓规格(之前已经提取完毕),材料……这三个是最后写到扩展数据里的,所以,现在不是很着急,因为我不会调用扩展数据。。。。标注代号那里新加了一组驱动,所以需要可以选择,暂时想到的实现方法是:写进INI文件中,这样2个对话框都可以调用,
3月28日 星期一
1从今天开始,不要纠结于程序有多少行,没有什么必要。。。。。做一块程序,就不要想其他的部分,这样会导致混乱,影响效率…………、型号和对应的低速轴形式是否需要修改?对ZQ系列,改一次就可以了、材料里面的东西,还没有加,
都不需要加了,把选择螺栓不同的驱动那里,修改一下,然后打包封存吧…………
2在表格里,将选择不同驱动,写进INI文件中了,然后再减速机主窗口中,读出来,就可以了,就可以形成交换了,这样插入的都是不同的了。。。发现了,那种不能确定的,在以后需要扩展的,还是都存到INI文件中,比较好,这样,程序的扩展性就上来了,能够有更好的通用性。幸好之前把三视图的接口做好了……
3彻底的完成了此程序,封存起来,目前功能全部实现~O(∩_∩)O~
3月29日 星期二
1继续去熟悉MFC和ADS,ADS中的缓冲区链表,是个难点~~~主要是没有地方去经常使用~~~~缓冲区各种数值代表什么意思,还不是很了解,一般情况下,在链表的最后,都需要显式地释放链表
2原来文档的读写过程,就叫做序列化~~~可以通过变量来存取文档数据,还可以使用MFC提供的集合类来进行操作。
集合类分为3类:链表集合类(List)、数组集合类(Array)和映射集合类(Map)。
建立可序列化的类……
3复制2个工程的步骤,嗯~多看几遍
3月30日 星期三
1熟悉别人程序,了解接口,为以后添加新的数据做准备,了解好端口,熟悉程序,看各个文件都是从哪里读出来……在表格初始化上做的比我的好,留的接口充足,对于不同的输入,可以只使用这一个程序。
2主程序中,在调用的时候,会发生错误,应该是准备函数中出现的错误,initdialog中……学到了修改窗口文字的命令setwindowtext产生错误的原因,是因为,我在写主函数的时候,根据条件的赋值,赋值出来的字符串是错误的,以至于,后面找不到文件~~~~~崩溃,一下午,就在跟自己的一个小错误战斗~~~
3月31日 星期四
1昨天程序检查过,准备部分问题,已经消除,小框里面的东西也已经检查过,没有任何问题,现在开始处理OK部分的代码,这里需要注意的是,对于OK中取得的数据的检查整理……主图已经从块变成了驱动,所以需要判断并且修改。
2刚刚调研完INI数据文件,里面的好多参数都变化了,连方向也产生了变化,这些是单方面原因,后备文件需要改名,就是圆锥轴端,圆柱轴端,齿轮轴端什么的。。。sJSQStyle 和sJSQName 必须加出来,好判断类别和减速机名称……崩溃~哦,原来是sJSQSort,呵呵
3现在整个图的驱动是可以插入了,而且不会发生冲突,第一块完成,然后,还需要继续插入底座、轴端以及螺栓,
轴端问题先放下:这个到时候直接替换一下适当的文件名就可以了,地方都留出来了,到时候现弄就可以的,现在轴端,现在的与以前的有命名差别,具体怎么样暂时不与考虑。先干瘪的。
插入底座问题:底座没有问题的,插入点都是一个插入点,不用改变插入点,在之前用的就是驱动来进行底座绘画的,现在依然是驱动,所以底座不需要做任何修改。
螺栓问题:看了他人的,发现直接声明全局变量,然后,在必要的地方分成两类,直接运算出来,就可以了;我的想法是在适当的地方声明,尽量的柔和到原本的程序中……不想过多的需要全局变量,两种方法哪种好?
4在CAD命令行下,直接输入各种命令,是从哪里学来的?
5在插入轴端的时候,需要注意的是,因为方向的变化,遮挡问题,需要注意插入轴端的顺序,不能随便的乱插。。。。这个问题其实是外部原因……因为外部就没有一个合适的规范,所以才会造成改来改去的问题……不懂了。现在的情况变成了,必须随着每一次的改变而改变……所以这么写是对的
6底座上的螺栓,怎么插入,之前是怎么计算出来的?