新项目 - 来自实验室的新鲜成果
这个出色的程序在 SourceForge.net 上引起了不小的轰动,但现在宣传热度已经消退,我想再次把它放在聚光灯下。作为一个异常易用的 3D 设计程序,这是一个我一直想介绍的项目。
引用其网站的话:“Sweet Home 3D 是一款免费的室内设计应用程序,可帮助您在房屋 2D 平面图上放置家具,并提供 3D 预览。”
安装
就库要求而言,我在文档中找不到太多信息,除了 Java 和可用的 OpenGL 驱动程序。但是,即使 Java 也可能不是真正需要的,因为给定的 tarball 中包含一个 Java 运行时环境文件夹,因此 Sweet Home 3D 或许无需本地安装即可运行。
当实际下载和运行 Sweet Home 3D 时,这是我遇到过的最简单的程序之一。访问网站并前往下载部分。在那里您会找到 32 位和 64 位 tarball 的选择,页面底部还提供了一个源代码 tarball。
下载适合您系统的 tarball 并解压它。在大多数现代文件管理器中,您应该能够进入新文件夹并单击 SweetHome3D 文件来运行程序。但是,如果这不起作用,请在新文件夹中打开终端,并输入
$ ./SweetHome3D
用法
在继续之前,我应该提到该网站有一个精彩的视频教程,可以非常快速地解锁该程序的工作原理。它推荐的第一件事是从蓝图图像开始,然后您可以在其顶部绘制。您不需要蓝图,但认真地说,如果可以的话,请获取一个。
要使用蓝图,请从主菜单中选择“平面图→导入背景图像”。选择您要导入的图片,接下来您需要定义从房屋一端到另一端的物理尺寸。您需要房屋的尺寸才能做到这一点,并且下面有一条蓝线,您需要将其拖到房屋的一端到另一端。虽然默认选择是厘米,但可以将其更改为米或毫米,或者您可以将其设置为使用英制系统。
接下来,您需要“通过单击图像下方的位置来定义图像的原点”。看到左上角的蓝色物体了吗?将其拖到房屋的左上角(您可能需要最大化此窗口以更准确地放置它)。
完成这些对话框后,选择“创建墙壁”按钮,然后单击蓝图中的墙壁边缘开始绘制。您每次单击都会定义一个角,并允许墙壁改变方向。当您到达墙壁的末端时,例如拱门,请双击或按 Esc 按钮。再次单击鼠标以在下一面墙的起点恢复该过程。当您在 2D 图像上绘制墙壁时,您会看到一个 3D 房屋开始在下面的窗格中成形。
门窗可以从左侧窗格拖到右侧的主平面图上。Sweet Home 3D 非常聪明,可以计算出门窗应该有多长,以及应该向哪个方向打开——当您将鼠标悬停在房屋的不同部分时,程序实际上会动态计算出来。即使您放置错误,每个对象都有自己的迷你 UI 用于重新调整位置。
“创建房间”按钮允许您在房屋内定义单独的房间(巧妙地独立于是否存在墙壁来定义区域)。此功能的主要用途实际上是用于纹理和颜色等,其中一个房间可以与其他房间具有不同的墙壁和地板。
左侧窗格还提供了一系列家居用品,例如椅子、洗衣机等。如果您要复制自己房屋的布局,这是一个很棒的工具,可以在您实际购买新物品之前测试新物品可能如何适合或看起来如何。
最酷的功能是,右侧底部的窗格实际上可以让您使用鼠标滚轮或箭头键在您的房屋周围飞行,您甚至可以拍摄快照或录制视频。
最终,Sweet Home 3D 是由了解自己在做什么的热情人士设计的。UI 在 3D 设计控件中采用了一些自由度,快速跟踪您制作房屋的区域,并省略了一些不必要的混乱,这些混乱通常使 3D 设计成为完全令人头疼的事情。这是一个很酷的项目。
与我评测的大多数项目不同,这个项目实际上是一组多个程序,作为一个套件呈现。无论您是对晶体结构还是设计化学分子感兴趣,这都可能是您正在寻找的项目。
安装
网站上提供了稳定版和开发版的源代码 tarball,旧版本可在发行版存储库中找到。我在开发版本中遇到了编译问题,所以我选择了稳定版本。库要求非常广泛。根据文档,“要编译和使用 GNOME 化学实用程序,您需要 libglade-2、goffice、GtkGLExt、OpenBabel、BODR 及其自身的依赖项。除了 OpenBabel 之外,所有内容都可从 GNOME 存储库或其镜像之一获得。”
我发现了更多需要的库,来自 configure 和 make 阶段。虽然上面列出了 libgoffice、libopenbabel 和 libgtkglext1,但它们都需要安装开发 (-dev) 包才能继续。其他需要的包是 libgsf-1 及其 -dev、libgcu0 及其 -dbg 以及 chemical_mime_data。
假设您有 tarball,解压它并在新文件夹中打开一个终端。从这里开始,这是标准的流程
$ ./configure $ make
如果您的发行版使用 sudo
$ sudo make install
如果您的发行版使用 root
$ su # make install
用法
如前所述,这是一个实用程序套件,而不仅仅是一个,因此我在此简要介绍一下每个实用程序。在每个实用程序的标题下方,我提供了运行该程序的 shell 命令。不幸的是,在评测此套件的过程中,我设法“破坏”了几个实用程序,似乎无法修复。无论我擦除了哪些文件,或者尝试了多少次重新安装,我都无法让这些程序再次工作。因此,评论将是简短的(并且可能是理论性的)。
GChemCalc
$ gchemcalc
根据“关于”页面,“GChemCalc 是一个面向化学家的简单计算器”。主菜单下方是一个用于输入公式的字段,GChemCalc 将尝试解释您输入的符号,无论是原子符号还是别名。输入公式后,其原始公式形式将写在下方,以及其分子量。在主字段中,成分将根据每个元素及其质量百分比显示。
单击“同位素模式”选项卡,您可以看到单同位素质量,既可以显示为直接数字,也可以显示在线形图中,可以将其导出为图像。
GChemPaint
$ gchempaint
我深入到足以意识到您在此程序中构建的结构可以被大多数其他程序使用。我只是试图从维基百科图表中重新创建 LSD 分子,但是当我将其保存为 .mdl 文件时,程序崩溃了。
要开始设计分子,请从工具窗口中选择一个对象,例如“添加四元环”,现在您可以在白色工作区中“绘制”。单击并按住鼠标,如果您移动鼠标,仍为彩色的对象将旋转,直到您松开鼠标按钮,然后该对象将变为黑色并保持在原位。虽然其操作似乎有些随意,但前后移动鼠标会使对象变大或变小(尽管您可能需要一些毅力才能使其工作)。
就符号及其放置而言,像 C 或 N 这样的符号会随着您继续扩展分子而更新其相应的符号,从而达到平衡(就我所知,我不是化学家)。
一旦您对某个结构感到满意,您就可以在 GChem3D 中打开它,让您将其视为实际的 3D 结构,而不是平淡的 2D 线条。
我本想更多地探索一个标有“导出以供维基百科发布”的按钮。我猜这个按钮经常被使用。
GChem3D
$ gchem3d
不幸的是,我在打开一个坏文件时杀死了 GChem3D(第一个受害者),并且没有机会进行测试运行。man 文件说:“gchem3d 是一个小型的化学查看器应用程序,可以显示多种化学文件格式”。从我从其他文档中可以了解到的情况来看,这发生在 OpenGL 3D 窗口中,允许您旋转和与每个结构交互,以及自定义视觉原子表示。
Gnome Crystal
$ gcrystal
根据 man 文件,“gcrystal 是一个基于 GNOME 化学实用程序的轻量级模型可视化工具,用于显示各种晶体微观结构的 OpenGL 模型”。虽然我没有破坏这个程序,但我作为一个外行无法理解它;然而,这个概念似乎与 GChem3D 的概念相似,但用于查看和编辑晶体形式,而不是查看分子结构。
GChemTable
$ gchemtable
这为您提供了一个元素周期表,其中包含每个元素的丰富信息数据库。单击一个元素,您将获得四个选项卡。第一个“主要”选项卡包含元素的名称(也在右侧翻译成其他几种语言)、原子序数、原子量和电子构型。其他选项卡为您提供电子特性、半径和热力学。
GSpectrum
$ gspectrum
根据 man 文件,“gspectrum 是一个简单的光谱可视化工具。它只能显示 JCAMP-DX 格式的文件”。这是我的另一个受害者,但它似乎在基本的 XY 刻度上显示 JCAMP 光谱。
这是我在 LJ 经历过的最倒霉的一个月。我想在我遇到这两个项目之前,我经历了十几个无法工作的程序。虽然这个套件中有一半的程序在我身上崩溃了(以一种我以前从未遇到过的方式),但我确信发行版稳定的版本会可靠得多。撇开坏运气不谈,GNOME 化学实用程序套件似乎提供了对重要科学领域中使用的一些文件类型的查看、访问和编辑。仅凭这一点就值得这个项目的坚持。
正在酝酿新鲜、创新或令人费解的东西?发送电子邮件至 newprojects@linuxjournal.com。
John Knight 是一位 26 岁的、痴迷于打鼓和攀岩的狂热分子,来自世界上最孤立的城市——西澳大利亚州珀斯。人们通常可以发现他要么埋头于 Audacity 屏幕,要么疯狂地敲击低音鼓。