自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MDLFANS的专栏

探讨mdl编程、CAD使用技术

  • 博客(34)
  • 资源 (9)
  • 收藏
  • 关注

原创 Windows下Lua Call C的方法

1.   用VS建立如下的dll项目,代码如下:#include #include #pragma comment(lib,"lua51.lib") static intl_sin(lua_State*L){    double d = lua_tonumber(L, 1);    lua_pushnumber(L,sin(d));

2016-08-13 12:04:45 536

原创 boost 与 C++11 比较

先不说boost的初始化表是多么怪异的形式了。c++11用大括号一括起来就OK了。auto 和 boost_auto 差别太大了,必须得告诉boost_auto宏一个类型,而非编译器本身的推断,不从编译器上搞突破,效率折扣大了,既然这么笨,似乎也没有用boost_auto的必要了。这么宏堆在一起,IDE就傻逼了,大段大段的红色波浪线告诉你—它的智商到头了。

2015-06-23 21:30:07 3465 1

原创 两个库的any容器比较

any容器,仅能包含一个类型的值。

2014-11-12 13:50:54 746

原创 备忘录模式 C++实现

memento模式最不好理解的是三个类的角色,其中两个是

2014-09-06 14:40:27 839

原创 状态模式 C++实现

Mark一下:

2014-09-04 15:05:30 737

原创 模板方法模式 C++实现

最好的学习设计模式的方法就是用最简单的

2014-08-31 19:06:22 972

原创 访问者模式之C++实现

// app.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include using namespace std;class Apple;class Book;class visitor{public

2014-08-31 13:54:15 683

原创 组合模式 Jave与C++实现及比较

初学Java,觉得不关注资源管理,总让人惴惴不安呢,

2014-08-23 16:19:49 667

原创 不够彻底的桥接方式 - 读《设计模式》

刘伟主编的大学专业教程的《设计模式》中关于桥接模式的一个例子1

2014-08-20 22:58:06 745

原创 Bridge模式 - 《Design patterns Explained》心得

#include "createElement.h"extern"C" DLLEXPORT int MdlMain(int argc,char** argv){ DPoint3d pts[] = { {0,0,0}, {10000,0,0}, {10000,10000,0}, {0,10000,0}

2014-08-08 10:31:47 788

原创 Qt与Boost多线程比较

虽然mdl开发不支持多线程,如果不涉及mdl

2014-07-20 21:59:39 4349

原创 BOOST模板库实现的功能与lua在语言层级提供的支持之比较

因为编译器不能升级,所以用了不少boost,

2014-07-03 22:36:27 1556

原创 boost::any任意类别容器

boost::any是个容器,而且可以用任意类别构造。

2014-06-29 21:28:50 1765

原创 廊道建模

重点:1 - 对齐2 - 辅助剖面

2014-06-21 22:58:47 884

原创 设计模式的混合使用

设计模式本来就是一些成熟的使用方法,

2014-06-15 19:12:36 3248

原创 vc 2005运行时的问题导致在客户机上不能运行

把mdl程序移植到另外一台电脑上运行,问题多多,让我始料未及,我以为在目标机器上安装了VC2005分发包:vcredist_x86.exe 就可以万事大吉了,结果牛B的微软再一次让我领教到了他的厉害...再一次被折磨. 但是我打开清单文件一看: 发现嵌入的清单文件都是version="8.0.50727.4053"这个版本,难

2014-06-07 19:28:17 726

原创 BOOST中的union:boost::variant

可完美替换掉C的union,而且不仅是POD类型。取回也更加

2014-06-05 17:48:08 1335

原创 qt下的重磅插件QWT和libqxt终于搞定了

经过不眠不休的几个昼夜,QWT可以安装在qt+vs2005下,而libqxt因为编译器版本不符,死活与qtcreator适应不了。qtcreator低版本的plugins功能太弱了,高版本有抛弃了vs2005.真折磨死人了………………幸好,他们都和qt designer还算和睦。上图,炫一下:

2014-02-17 16:05:03 4389 3

原创 在mdl中的Qt消息重定位

这种重定位简直太完善了,简直是为mdl开发量身定制的。 void mdlMessageOutput (QtMsgType type, const char *msg){ switch (type) { case QtDebugMsg: mdlcout << msg << endl; break;

2013-12-07 16:58:14 1212

原创 用C++\CLI包装普通类

普通类,即不是value class 也不是ref class。是C或者C++的类。这种类必须用new创建,而不是gcnew。所以必须释放。要在cli中使用他们,得找个合适的时机释放他们。见代码:#pragma unmanagedstruct __declspec(dllexport) point{ double x, y, z; point(double xv, double

2013-10-31 15:18:45 1214

原创 STL最小值算法

如果是STL容器,最小值算法返回迭代器,如果是数组,则返回地址。下面是求的一个DPoint3d数组中距目标点最短距离的点:struct distanceCriteria : std::binary_function{ distanceCriteria(DPoint3d* targetPt):m_targetPt(*targetPt){} bool ope

2013-09-05 19:04:35 1498

原创 C++11 初始化表

虽然是给库作者用的,但对普通程序员好像也挺有用的,必将大兴于世。而且是boost里没有的东西。#include "stdafx.h"#include using namespace std;#include class listint{public: listint(const initializer_list& nums) { m_coll.reserv

2013-08-28 12:18:21 939

原创 VC2010使用BOOST的编译错误

Error    2    error LNK1123: failure during conversion to COFF: file invalid or corrupt   解决办法:Project(工程) -> Properties(属性) -> Manifest Tool(清单工具) -> Input and Output(输入及输出)-> Embed Manifes

2012-08-13 23:03:33 788 1

原创 boost的bind为何导致vc2005编译器崩溃

bind与标准库配合可以少些不少的FunctionObject。代码极易维护。但似乎某些编译器支持不好,即使是VC2005.下面这段代码是不能通过编译的: std::sort(profPointsP.begin(),profPointsP.end(), boost::bind( std::less(), boost::bind(&PointOnProfile::get

2012-07-22 13:42:27 904

原创 mdl编程心得

这个工具是我花了一个晚上写的,又化了一个晚上进行的整理和界面。感觉是最近写的比较完整而几乎没有bug的工具了。几个体会:1)思想上要成熟2)代码要有条理,易维护3)界面简单4)不写长代码,越长藏匿的垃圾和虫子越多5)STL真是个好东西呀,仅仅std::sort和std::unique和std::erase这几个函数加上自定义类型构成了核心的算法。点击打开链接

2012-06-05 04:59:59 1459 3

转载 播布客 视频教学文件下载方法

最近常上播布客看视频教学,可是有时,看了,忘记保存地址,再找,又要很长时间。而且看到,有一些并不是当时就用的,下回真用到还找不到,所以想下载了,看起来方便,也方便日后查找。下面以播布客,赶星老师的一篇openvpn为例,写下,下载方法。地址如下:http://www.boobooke.com/v/bbk3580/那么下载的时候,只要在地址的后面加video.swf即下载地址为htt

2012-03-23 22:55:14 6266

原创 下载编译过的boost库

可以从此下载编译过的boost库:http://www.boostpro.com/download/

2012-03-19 14:54:42 827 1

原创 mdl c++API和BOOST_AUTO&BOOST_FOREACH

C++0X已经发布啦,如果你用的是旧编译器,好多东西用不上,如typeof和auto;我用mdl C++ API还是VS2005,因为不想换别人的机子还带个10.0的运行时过去。boost中的BOOST_AUTO在旧编译器上也可以使用auto的特性.在遍历ElementAgenda的时候,才开始,可能不知道是声明一个什么变量,是EditElementHandl还是EditElement

2012-03-19 12:23:29 2409 1

原创 如何将流输出到MicroStation各个窗口

在mdl的debug的时候,输出字符串和数字,或者字符+数字,用sprintf,写一堆,而mdl中的ElementID是int ?uInt32还是?得判断好,你是不是觉得很麻烦,如果像c++的cout那样能够输出到mdl窗口就好了。下面这个模板函数可以作为一个轻量级的解决方案:typedef void(*outFuncP)(char*);templatevoid mdlDebugP

2012-03-07 06:04:57 1354

转载 Qt中设置界面风格

在main函数中QApplication::setStyle("plastique");风格可以是 "windows", "motif", "cde", "plastique", "windowsxp", or "macintosh"

2012-02-29 00:26:45 1518

原创 qmake编译dll

qmake是Qt的make工具,但不仅仅用于Qt,看用在很多方面。比如编译NativeCode的时候。mdl是靠手工编辑make文件,如果借助VC的话,要配置很多选项和配置很多输入库和头文件搜索路径等,麻烦的很。有了qmake,这一切都解决了。在mstndevvars.bat中增加一行:CALL D:/qt4.4.3/bin/qtvars.bat则当前的环境即可以调

2012-02-26 22:12:20 2343

原创 用Qt制作mdl程序启动界面

Qt的QSplashScreen是制作软件的启动时加载一张图片,启动完成,则消失。mdl开发的插件也可以在启动时候来个类似的动作。用mdl || Nativecod制作,不知要写多少,用Qt简单多了。将下面的函数到MdlMain里,就ok了。不需要QSplashScreen的finished函数了。#include "stdafx.h"#include #include #inc

2012-02-25 21:17:49 1779 1

原创 Qt的pro文件比mdl的make更简洁

TEMPLATE=libDEFINES += winNTTARGET = DEPENDPATH += . GeneratedFilesINCLUDEPATH += "d:\progra~1\bentley\micros~1\micros~1\mdl\include"LIBS += -L"d:\progra~1\bentley\micros~1\micros~1\mdl\library"

2012-02-22 23:43:40 1266 1

原创 MDL中使用真彩色图标

方法1:使用rsc资源文件制作如下的mke文件,制作成一个包含有真彩色图标的资源文件,将资源文件放到..\microstation\icons\下即可使用里面的真彩色图标,使用方法见方法2中的资源定义;rscName=ico.rscrscFile = $(baseDir)$(rscName)BUILD_USING_NoToolset = 1NO_COMPILERS_MKI

2012-02-04 22:58:54 1178

Game Programming Using QT

Game Programming Using QT

2016-10-17

Rapid_GUI_Programming_with_PyQt

Rapid_GUI_Programming_with_PyQt 超清文字版

2016-10-17

Application Development with Qt Creator.2013

Application Development with Qt Creator.2013 文字版

2016-10-17

Think Python, 2nd Edition.pdf

Think Python, 2nd Edition.pdf

2016-10-11

Learning Boost C++ Libraries.pdf

Learning Boost C++ Libraries.pdf

2016-10-11

Lua call C例子

在windows下lua调用c函数的例子

2016-08-13

MDLProjectWizard2005

MDLProjectWizard2005

2012-02-01

MDLProjectWizard2003

MDLProjectWizard2003。生成一个简单的mdl程序,可供分析、学习。for VC2003 only...

2012-02-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除