QQ群讲义3--BC3.1的图形学设置及两个经典图形学算法

在Win10上使用BC3.1 学习ucosii用到BC3.1,原以为用过DOSBox会比较容易,还是折腾了半天。。 记录一下 因为同时还要用DOSBox来学汇编,所以单独为BC3.1创建了一个配置文档和bat文件,方便使用。 步骤: 1、新建一个txt,把DOSBox原有的.conf文档复制了一份,最后需要添加的部分如下: [autoexec] # Lines in this section will be run ... 阅读详情

众所周知,TC和BC这两个软件由于历史的原因,在中国的生命力出了奇的顽强,TC似乎是不少高校学生学C语言的首选,黑乎乎的运行界面,导致了好多人认为TC只能写出这种黑乎乎的程序,当然,TC和BC诞生在那个年代,写Windows程序确实困难(注意,是困难,并不是不可以),而且,即使不写Windows,写个窗口和图形的程序虽然有点麻烦,但也是完全可以的,在学生时代,每个用BC和TC的人可能都想写个图形程序,但成功的不多。

 

首先,刚才有人说没用过这个BC 3.1,先说一下这个工具的设置。

 

对于刚安装成功者,主要是四个路径的设置:

点Option--Directories之后出来的界面上,有四个路径,其中Include是h文件的所在地,一般就是安装后的目录下的include文件夹;lib是库文件,其中包含着很多函数的实现过程,也是十分重要的,一般设定为安装目录下的lib文件夹;source是源文件,就是自己集中存放源文件的位置;output是输出文件设置,就是默认的某个程序编译之后,生成的obj文件和exe文件所在地。

由于BC和TC界面十分相似,操作我就不多说了

下边,先简单说明一下BC对图形程序的处理概念,然后说说如何设置,为图形程序服务,再用一个Line函数,实现一个线段。

 

图形程序,首先涉及的问题就是显卡的驱动,大家都知道,即使是Windows,安装之后,往往还要单独安装显卡驱动,所以,在BC下,这个问题有单独的处理方法:

凡是安好BC的,在BC的那个文件夹下会看到一个BGI文件夹,其中有很多CHR与BGI文件,这个就是咱们用BC做图形程序的根本。


实际上BGI就是BC和显卡之间的一个接口,BGI文件就是BC的图形驱动,由于年代久远,且考虑到通用性,所以这些BGI文件不可能十分充分的发挥显卡的功能,只能在一个中等的层次上去画图,这个文件夹里的ATT、CGI、EGAVGA这些bgi文件都是。

操作方法如下:

打开BC3.1,因为图形程序的链接需要一个设置,在Option-Linker-Library中有个选项Graphics lib这个选项前边大家先选定,注意,BC的选定是个X,默认的是不选的,做图形程序这个一定要选上,好,再说下一步,刚才在BGI文件夹中,大家看到了一个exe文件,“BGIOBJ.exe”它的作用就是把BC的图形驱动转换为lib文件,然后添加到graphics.lib中

使用方法是,启动命令行,用cd命令,转到BC所在的目录,用cd BGI,转到BGI文件夹,然后,输入BGIOBJ EGAVGA,输入这个命令的作用就是把EGA,VGA这两种的驱动文件转换为了一个egavga.obj文件,这个文件先放着, Windows下打开BC/Lib文件夹, 在这个文件夹下会发现一个Tlib的可执行文件,这个文件的作用就是对lib文件和obj文件进行连接,把Tlib这个可执行文件复制到BC/Lib文件夹下,先放着,然后回到咱们刚才那个BC/BGI文件夹下,把egavga.obj文件找到,复制到BC/Lib文件夹下,好了,三方大会师,下边就是至关重要的一步,命令行下,用cd命令转到Lib这个文件夹,然后输入Tlib graphics.lib+egavga.obj,就生成了一个新的graphics.lib文件,这个文件就保证了在调用graphics.h文件中的画图函数以EGA或VGA的显示模式画图的时候可以正常显示,以上是对BC进行了基本的设置

 

下边就说程序中的方法:

 

用某文本编辑器或直接在BC中开始写

#include <graphics.h>

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

 

}

首先,大家写下上述内容,第一个就是图形函数所在的文件,后两个略,在好多书上,往往会看到这样一段示例程序:

int main()

{

       //初始化图形程序设置

       int gdriver =DETECT, gmode, errorcode;

       initgraph(&gdriver, &gmode, "");

       cleardevice();                                                          //清空屏幕

 

       //图形错误处理

       errorcode = graphresult();                         

       if (errorcode != grOk)

              {

                     printf("Graphics error: %s/n", grapherrormsg(errorcode));

                     printf("Press any key to halt:");

                     getchar();

              exit(1);

              }

      

       setcolor(BLUE);

       line(20,50,200,400);

 

       getchar();

    return 0;

}

大家谁有兴趣,可以先试试这个程序是否可以运行,估计大家会看到一条经典错误“BGI Error: Graphics not initialized (use 'initgraph')” ,实际上,仔细看有关文档,往往会发现一段话,意思是说,Turbo C对于用initgraph()函数直接进行的图形初始化程序, 在编译和链接时并没有将相应的驱动程序(*.BGI)装入到执行程序, 当程序进行到intitgraph()语句时, 再从该函数中第三个形式参数char *path中所规定的路径中去找相应的驱动程序(上边的说法TC换成BC也是一样的,但在VC是没有<graphics.h>的,<graphics.h>是BC和TC特有的,VC下,画图程序的方式整个变了)。

实际上,在一般我们写的程序中,都是用 ” ” 来表示上边那个initgraph的第三个参数,表示当前路径,当然,直接运行BC,程序源文件,以及程序生成的可执行文件所在的位置都试过了,把egavga.bgi文件放到这三个地方,错误依然出现,说明要有别的方法来解决;于是查了不少文章,终于看到了“独立图形程序”这个概念,仔细看看,知道了原因。就是说这个方法是要建立一个独立执行的文件,方法是:

registerbgidriver(EGAVGA_driver);

这句放在initgraph之前,这句的作用在于把EGAVGA的图形驱

Win10如何使用BC3.1精简版 Win10如何使用BC3.1精简版 使用Borland C++3.1 学习μC/OS—Ⅱ几乎是现在的普遍做法,但是由于Win10系统不能直接使用BC3.1,所以需要用到DOSBox。 1、解压bc3.1精简版压缩包,本文将BC3.1文件夹复制在D盘下,DOSBOX按照默认路径安装。下图为两者安装目录图示: 2、修改DOSBOX的配置文件,找到DOSBox文件安装路径,记事本方式打开DOSBox 0.74-3 Options.bat文件,在此文件末尾添加: MOUNT C D:\BC//意为把D:\BC目录 阅读详情

相关推荐

【信息科学与工程学】计算机科学与自动化——第六十六篇 算子篇 第一章 通用算子01 多模态数据(图形/图像/文本/语音)中推断人类内在状态、策略、动机和利益的算法算子知识库

编号领域算法/方法算子名称算子的数学方程式/表达复杂度 (示例)关联知识11量子场论正则量子化产生/湮灭算符对易关系: [â_p, â†_q] = δ⁽³⁾(p​ - q)应用于态空间,计算复杂度取决于截断福克空间,粒子数表象,二次量子化12统计力学蒙特卡洛模拟马尔可夫链转移算子T(s → s‘) :满足细致平衡条件 π(s)T(s→s’)=π(s‘)T(s’→s)收敛到平衡分布需 ~O(τ), τ为相关时间细致平衡,Metropolis-Hastings准则,重要性采样13电磁学边界元法单层势/双层势算子

weixin_49199313的博客 308

【信息科学与工程学】【数据科学】数据科学领域 第四篇 数据处理05 图形理论与图数据

本表格系统性地整理了分子运动图形图像模拟中涉及的全部核心数学方程分子力学基础:包括力场能量项、键合与非键相互作用的详细表达式分子运动方程:刚体运动、柔性分子运动、约束动力学算法溶剂效应:隐式与显式溶剂模型,连续介质方法量子化学方法:薛定谔方程、分子轨道理论、密度泛函理论分子动力学:积分算法、增强采样技术、自由能计算方法分子对接:打分函数、搜索算法、结合模式分析光谱模拟:红外、拉曼、圆二色性、NMR等光谱的计算方法反应动力学:过渡态理论、势能面、非绝热过程模拟分子可视化。

weixin_49199313的博客 1336

Borland C/C++ 3.1 完整版(BC3.1)

可编译uCOS代码的borland c++ 编译器3.1版 可直接用来编译生成16位程序

bc31使用说明

美国Borland公司的经典产品BC3.1是一套应用于x86系列CPU平台支持C/C++及汇编编程的集成开发调试软件工具BC3.1自推出以来就以它卓越的编译性能及简单明了的操作界面获得了巨大的成功深受世界各地广大开发工程师的喜爱在当时的PC/DOS环境风靡一时时至嵌入式系统的兴起BC3.1则成为x86系列嵌入式产品开发中的重要工具之一如著名的uCOS-II多任务操作系统的基本版本就是采用BC来编译的本文将针对基于英创嵌入式网络模块的应用程序的开发特点对BC3.1的使用作一基本的使用介绍以让广大的开发工程师能分享BC3.1为我们带来的高效与便捷。

bc3.1 精简版

用来编译应用程序的精简工具 包含 inlcude bin lib

适用于win7的bc3.1

直接进入bc3.1 打开第三个文件即可 图形函数可以运行 彻底解决了bc不能单独在win7下运行的难题

BC++3.1完整版

注意: 要想在Windows环境下稳定运行bc.exe 建一个批处理bc.bat,内容为下面两行,放在bc.exe同目录下,再将bc.bat发送到桌面快捷方式: del tc*.swp >NUL start command /c bc.exe 如果想在IDE里面使用鼠标,还应将快捷方式属性中的快速编辑模式关掉。

bc3.1精简版+uCOS-II中文版电子书

borland c 3.1 精简版,内只有三个文件,文件大小1.69MB,建议配套《嵌入式实时操作系统uc/os-II原理及应用》(任哲编著,北航出版社)使用。 也可以参考文档中的两本uCOS-II中文版电子书。

BC3.1 软件开发工具使用简介

一篇关于bc31软件开发工具简介的文章,相当好,上传共享一下

TESSY创建单元测试或集成测试工程

我们以tessy5.1为例,给大家展示单元测试和集成测试工程的创建过程。

空气中的告白专栏 1683

从接线到组态:手把手教你搞定PROFIBUS-DP与PA的混合网络搭建(基于西门子TIA Portal)

本文详细介绍了PROFIBUS-DP与PA混合网络的搭建方法,基于西门子TIA Portal平台,从硬件选型、网络架构设计到组态配置和现场调试,提供了一套完整的实战指南。重点解析了DP/PA耦合器的使用、地址映射策略及网络诊断技巧,帮助工程师高效构建高可靠性的工业自动化网络。

weixin_32103009的博客 302

Linux yum源配置以及yum命令讲解

前面为大家介绍了RPM二进制包安装软件,RPM包安装的最大的缺点也提到过,就是依赖性太强,一旦遇到依赖问题,则需要我们手动解决包之间具有依赖性的问题,今天为大家介绍一种可自动解决包之间依赖关系的安装方式:yum。 yum 全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上我们通常可以通过各种软件管家实现软件的一键安装、升级和卸载,yum就是Linux 系统中的一键安装工具。yum 解决依赖关系的基本逻辑是:yu

九派Linux的博客 2283

从ORCAP-1589警告看Cadence ORCAD的DRC设置:如何避免‘网络别名’引发的潜在短路风险

本文深入解析Cadence ORCAD中ORCAP-1589警告的深层含义,探讨网络别名可能引发的短路风险及DRC设置优化方案。通过分析网络别名的设计意图、DRC规则配置及最佳实践,帮助工程师有效规避设计风险,提升电路设计的可靠性和规范性。

weixin_34194829的博客 297

遗传算法解整数规划IntCon

x = ga(fun,nvars,A,b,[],[],lb,ub,nonlcon,IntCon) IntCon就是代表整数的参量,描述的是哪几个自变量是0-1整数变量。比如navrs设置有4个变量,设置IntCon为[2 3],代表第2和第3个变量是整数。 再比如设置IntCon=2:2:nvars,代表偶数项的变量是整数。 值得注意的是一旦设置了非空的IntCon,则Aeqandbeqmust be an empty entry ([]), andnonlconmust re...

jianti9962的博客 9220

从编解码芯片看Tesla T4的隐藏实力:双NVDEC如何实现70路1080P解码?

本文深入剖析了英伟达Tesla T4显卡的隐藏实力,重点解读其独特的双NVDEC硬件解码器设计如何突破性能瓶颈。通过分析Turing架构、对比HEVC/H.264解码差异,并结合驱动与SDK优化,揭示了实现高达70路1080P视频流并发解码的原理与实战配置,为云游戏、直播转码等高并发场景提供高效解决方案。

weixin_29209801的博客 485

SAP S/4 HANA CO 成本模块实战指南

摘要:SAP S/4HANA CO(管理会计)模块是企业内部成本管理的核心工具。本文系统介绍了CO模块的组织结构(控制范围与会计科目表映射)、基础概念(计划值与预算值)以及6大子模块功能(成本要素、成本中心会计等)。重点解析了各子模块的应用场景与差异,包括成本归集、费用分摊、利润分析和产品成本控制,并对比了利润中心与成本中心、内部订单与销售订单的区别。通过事务代码示例和功能对比表,帮助用户快速掌握SAP CO模块的核心管理逻辑与实施要点。

金牌架构师 1125

Linux系统之部署经典魔塔小游戏

Linux系统之部署经典魔塔小游戏

jks212454的博客 1816

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

上一篇: QQ群讲义2--VB的API与SDK简介
下一篇: 位图绘制后拖放窗口时闪动现象的解决方案
九桔猫
博客等级 码龄22年 114粉丝 14原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值