当前位置:首页>python>Python读取STEP/STP文件与三维可视化:三大独立方案的深度实践

Python读取STEP/STP文件与三维可视化:三大独立方案的深度实践

  • 2026-08-27 14:35:39
Python读取STEP/STP文件与三维可视化:三大独立方案的深度实践
点击上方蓝字订阅!

在工程与科学计算领域,对STEP或STP格式的三维模型进行读取与可视化是一项常见需求。STEP(ISO 10303)是一种基于EXPRESS数据模型的标准化交换格式,用于表示产品生命周期的几何与拓扑信息,其核心在于边界表示(B-rep)数据结构,即通过面、边、顶点及其连接关系精确描述实体模型。Python作为胶水语言,提供了多种途径对接底层几何内核或可视化引擎,从而在脚本环境中实现STEP文件的解析与渲染。本文将从实用性与原理深度出发,介绍三种主流方案,并给出完全独立可运行的代码示例,帮助读者根据具体场景做出选择。

首先需要明确,STEP文件本身不存储三角网格或离散点云,而是存储精确的几何曲面(如NURBS、B样条、圆柱面等)和拓扑实体(如壳、面、环)。因此,可视化STEP文件的核心步骤是:将B-rep数据离散化为多边形网格(三角化或四边形化),再送入图形管线进行渲染。不同方案在离散化算法、网格质量、渲染风格以及几何操作能力上存在显著差异。


方案一:基于PyVista与pyvista-cad的轻量级可视化

PyVista是VTK(Visualization Toolkit)的高层封装,提供了类似Matplotlib的便捷API,而pyvista-cad扩展库则专门为CAD数据设计,内置了与OpenCascade(OCCT)的接口,能够将STEP文件的B-rep实体转换为高质量的三角网格,并保留边界的锐利特征。这一组合的最大优势在于代码极度精简,且渲染效果接近专业CAD软件——曲面光滑,轮廓边缘清晰,同时支持交互式旋转、缩放和标量场映射。

安装时推荐使用带STEP支持的完整版本,因为pyvista-cad依赖OCCT的Python绑定库pyocct,该库通过环境变量动态加载OCCT的共享库。执行以下命令将自动处理这些依赖:

pip install pyvista-cad[step]

安装完成后,读取并显示一个STEP模型仅需三行核心代码。以下代码块独立运行,它首先导入pyvista和pyvista_cad(后者会自动注册针对.stp.step扩展名的读取器),然后调用pv.read返回一个pyvista.MultiBlock对象,最后调用plot方法显示。show_edges=True参数会绘制模型的面片边界,使几何轮廓更加清晰。

import pyvista as pv
import pyvista_cad  # 隐式注册step读取器

# 读取step文件,返回多块数据集(每个实体或组件对应一块)
mesh = pv.read("example_model.stp")

# 可视化,显示边缘线以增强几何感
mesh.plot(show_edges=True, window_size=[1024768])

对于更精细的控制,可以单独构建绘图器并指定着色方式。下面的代码展示了如何根据模型的高度(Z坐标)对曲面进行颜色映射,同时利用cad.add方法添加CAD风格的渲染(自动处理光照和边缘)。该代码完全独立,不依赖上一段代码。

import pyvista as pv
import pyvista_cad
import numpy as np

# 读取并提取第一个部件(假设模型为单实体)
multi_block = pv.read("example_model.stp")
part = multi_block[0]  # 若模型含多个部件,可遍历

# 构造绘图器并启用CAD渲染风格
plotter = pv.Plotter(window_size=[1024768])
plotter.cad.add(part, scalars=part.points[:, 2], cmap="plasma", show_edges=True)

# 添加颜色条
plotter.add_scalar_bar(title="Z坐标", n_labels=6)
plotter.show()

从深度角度理解,pyvista-cad内部调用OCCT的BRepMesh算法进行三角化,其网格密度可通过pyvista_cad.settings中的全局参数调整,例如pyvista_cad.settings.TRIANGLE_DEFLECTION控制最大弦偏差,默认值为0.1毫米。对于大型装配体,三角化可能消耗较多内存,此时可以仅对可视部分进行离散化,或通过mesh.decimate()减少面片数量。此外,MultiBlock结构支持按部件分别操作,例如为不同部件赋予不同颜色或透明度,这种层次化数据组织方式与CAD装配树逻辑一致。


方案二:基于PythonOCC的全功能几何内核

若需求不仅限于可视化,还涉及模型修复、布尔运算、截面生成、参数化修改等高级几何处理,则PythonOCC是最强大的工具。它是OpenCascade Technology(OCCT)官方C++库的完整Python封装,几乎暴露了所有类与方法。OCCT作为CAD/CAE领域的成熟内核,其STEP导入器严格遵循AP214和AP203标准,能够处理复杂装配、多种曲面类型以及非流形拓扑。

安装PythonOCC推荐使用Conda,因为其二进制包由conda-forge维护,会自动匹配OCCT的版本和依赖库(如FreeType、Tcl/Tk)。建议新建专用虚拟环境以避免版本冲突:

conda create -n pyocc python=3.12
conda activate pyocc
conda install -c conda-forge pythonocc-core=7.9.3

PythonOCC本身不包含图形界面,它提供一套显示服务类,可挂接到Qt、wxWidgets或纯OpenGL窗口。最快速的启动方式是使用内置的SimpleGui,它基于Qt构建了一个轻量级交互窗口。下面的代码段完全独立,它读取STEP文件,初始化显示后端,并将模型形状添加到场景中。update=True参数迫使渲染器立即刷新。

from OCC.Display.SimpleGui import init_display
from OCC.Extend.DataExchange import read_step_file

# 读取step文件,返回TopoDS_Shape对象
shape = read_step_file("example_model.stp")

# 初始化显示窗口(默认使用Qt)
display, start_display, _, _ = init_display()

# 显示形状,设置透明度为0.3(可选)
display.DisplayShape(shape, update=True, transparency=0.3)
# 自动适配视角
display.FitAll()

# 进入消息循环,阻塞直到窗口关闭
start_display()

若需嵌入到已有Qt应用程序中,可使用OCC.Display.qtDisplay模块,其内部维护一个QtViewer3D控件。PythonOCC的显示服务底层依赖OCCT的V3d_ViewerAIS_InteractiveContext,支持选择高亮、动态旋转、网格显示模式(着色线框或隐线移除)等专业交互。更重要的是,read_step_file函数返回的TopoDS_Shape是一个引用计数管理的拓扑对象,可以传递给BRepAlgoAPI系列类进行并集、差集运算,或通过BRepOffsetAPI进行厚壳和抽壳操作。对于大型模型,建议在读取后使用ShapeFix_Shape进行修复,因为许多STEP文件来自不同软件,可能存在微小间隙或重叠面,直接离散化会导致网格畸变。


方案三:基于Volmdlr的计算几何与Web可视化

Volmdlr是一个新生代库,其设计目标是“面向计算的体积建模”,特别强调与数值模拟、优化算法的集成。它采用纯Python实现核心几何算法(但部分底层依赖numpy和scipy),因此不依赖于OCCT或VTK,安装更为轻量。Volmdlr支持STEP文件的导入导出,并提供了基于babylon.js的Web端3D显示模块,方便在浏览器中分享结果。

安装通过pip即可完成:

pip install volmdlr

该库将STEP中的几何实体映射为自身的volmdlr.bsplinevolmdlr.surfaces等类,三角化则使用内置的Delaunay或参数空间采样方法。下面的独立代码读取STEP文件,利用其babylon子模块生成一个HTML文件,可在任意浏览器中打开并交互查看。该过程不依赖任何本地图形窗口,适合服务器端或云环境。

import volmdlr
from volmdlr import step
from volmdlr.rendering import babylon

# 从step文件导入,返回一个VolumeModel对象
volume_model = step.load("example_model.stp")

# 生成babylon.js的HTML文件,包含模型和轨道控制器
babylon.display(volume_model, "output.html")

# 此外也可以直接获取三角网格数据
triangles = volume_model.triangulation()
print(f"三角面片数量: {len(triangles)}")

babylon.display函数会创建自包含的HTML页面,内置光源、鼠标交互和自适应视口。对于需要嵌入Jupyter Notebook的场景,Volmdlr还提供了volmdlr.rendering.notebook模块,利用Three.js或Plotly进行内联渲染。从数据结构来看,Volmdlr的VolumeModel由多个VolumeShell组成,每个实体包含一组Face,每个Face拥有边界环和参数曲面。三角化时,默认采样密度由全局变量volmdlr.rendering.TRIANGLE_MAX_EDGE_LENGTH控制,用户可修改此值以平衡精度与性能。由于Volmdlr纯Python的特性,其计算速度不及基于OCCT的方案,但在教育、快速原型和算法研究领域有其独特价值。


补充:其他可选途径

除上述三种外,FreeCAD也提供了强大的Python接口。FreeCAD本身是一个完整的CAD应用程序,其内置的Part模块基于OCCT,并添加了易用的Python绑定。使用import FreeCADimport Import即可加载STEP,然后调用Gui.ActiveDocument.ActiveView.viewAxometric()进行可视化。但FreeCAD通常需要安装完整的桌面软件,不适合作为纯库集成。Vedo库(基于VTK的另一个高层封装)在2025.5.4版本后新增了vedo.shapes.STEP类,但底层仍依赖OCCT,且文档尚不完善。NASA开源的cape.step模块则专注于从STEP中提取曲线和点坐标,专用于空气动力学网格生成,不提供三维渲染功能。


综合对比与选型建议

从实现原理看,所有方案都遵循“导入->离散化->渲染”三部曲,但离散化算法的质量直接决定可视化效果。PyVista-cad和PythonOCC共享OCCT内核,因此三角化结果一致——平滑曲面上的网格沿等参线分布,在曲率大处自动加密,边界线强制保留,适合工程审阅。Volmdlr的自建三角化器在复杂曲面(如修剪过的NURBS)上可能产生较粗糙的网格,但足以满足概念验证需求。

对于性能,PythonOCC在内存管理上最为高效,因为它直接操作C++对象,而PyVista通过VTK封装,会复制数据到VTK的数据结构中,多一层转换开销。但对于数万个面以下的零件,三者均能流畅交互。

在代码可读性上,PyVista-cad无疑胜出,它用plot一行完成所有工作;PythonOCC则需要显式管理显示循环,但换来更细致的控制;Volmdlr的Web输出则开创了无桌面的新场景。

因此,若您只是偶尔查看STEP模型,或需要在Jupyter中快速展示,选择方案一。若项目涉及几何算法开发、参数化建模或网格生成,方案二是不可替代的。若您构建的是Web应用或计算管道,且不希望引入重量级依赖,方案三最为适宜。无论哪种,上述代码均独立可运行,只需将"example_model.stp"替换为实际文件路径即可。理解每种方案背后的几何内核与数据流,将帮助您在遇到复杂模型时从容调整参数,达到最佳的显示效果与计算效率。

 • end • 

陪伴是最长情的告白

 为你推送最实用的资讯 

识别二维码 关注我们 

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-27 17:52:54 HTTP/2.0 GET : https://f.mffb.com.cn/a/512296.html
  2. 运行时间 : 0.220358s [ 吞吐率:4.54req/s ] 内存消耗:4,587.09kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=ff8d2f762100965ea62bfebf5161aa4f
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001329s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001717s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000712s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000695s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001370s ]
  6. SELECT * FROM `set` [ RunTime:0.000610s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001473s ]
  8. SELECT * FROM `article` WHERE `id` = 512296 LIMIT 1 [ RunTime:0.010713s ]
  9. UPDATE `article` SET `lasttime` = 1787824374 WHERE `id` = 512296 [ RunTime:0.025142s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.001061s ]
  11. SELECT * FROM `article` WHERE `id` < 512296 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001283s ]
  12. SELECT * FROM `article` WHERE `id` > 512296 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.002499s ]
  13. SELECT * FROM `article` WHERE `id` < 512296 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002590s ]
  14. SELECT * FROM `article` WHERE `id` < 512296 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004042s ]
  15. SELECT * FROM `article` WHERE `id` < 512296 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.007430s ]
0.224054s