📄 frmmain.frm
字号:
VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "Comdlg32.ocx"
Object = "{99AA4EEF-16DB-41B9-8A9E-CACCD93FBD5D}#5.2#0"; "Super3D.ocx"
Object = "{03ED3B1E-ED1B-4A2E-8FE3-D8D1A673F5D4}#5.2#0"; "SuperMap.ocx"
Begin VB.Form frmMain
Caption = "三维渲染"
ClientHeight = 6345
ClientLeft = 60
ClientTop = 345
ClientWidth = 10905
Icon = "frmMain.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 6345
ScaleWidth = 10905
StartUpPosition = 2 'CenterScreen
Begin VB.CommandButton btnPanRotate
Caption = "三维旋转"
Height = 495
Left = 9045
TabIndex = 6
Top = 30
Width = 1215
End
Begin VB.CommandButton btnPan
Caption = "三维平移"
Height = 495
Left = 7845
TabIndex = 5
Top = 30
Width = 1215
End
Begin VB.CommandButton btnZoomout
Caption = "三维缩小"
Height = 495
Left = 6645
TabIndex = 4
Top = 30
Width = 1215
End
Begin VB.CommandButton btnZoomin
Caption = "三维放大"
Height = 495
Left = 5445
TabIndex = 3
Top = 30
Width = 1215
End
Begin SuperMapLib.SuperMap SuperMap1
Height = 5625
Left = 45
TabIndex = 1
Top = 600
Width = 5355
_Version = 327682
_ExtentX = 9446
_ExtentY = 9922
_StockProps = 160
BorderStyle = 1
End
Begin Super3DLib.Super3D Super3D1
Height = 5625
Left = 5460
TabIndex = 2
Top = 600
Width = 5355
_Version = 327682
_ExtentX = 9446
_ExtentY = 9922
_StockProps = 128
AltitudeField = ""
Texture = ""
ScaleZ = 1
End
Begin SuperMapLib.SuperWorkspace SuperWorkspace1
Left = 3540
Top = 2400
_Version = 327682
_ExtentX = 847
_ExtentY = 847
_StockProps = 0
End
Begin MSComDlg.CommonDialog cdlFile
Left = 2625
Top = 4125
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
Begin VB.CommandButton btn3D
Caption = "三维渲染"
Height = 495
Left = 150
TabIndex = 0
Top = 30
Width = 1215
End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'=====================================SuperMap Objects示范工程说明=======================================
'
'功能简介:实现城市三维景观显示;
'所用控件:SuperMap 控件、SuperWorkspace 控件、Super3D 控件;
'所用数据:..\data\city3d\city3d.sdb;
'操作说明:
' 1、点击“三维渲染”,在三维窗口中会显示二维城市数据的三维景观;
' 2、三维窗口上面提供三维浏览工具。
'===================================SuperMap Objects示范工程说明结束=====================================
Option Explicit
Private Sub btn3D_Click()
If Super3D1.Layer3Ds.Count > 0 Then Exit Sub
Dim objLayer As soLayer
Dim objDt As soDataset
Dim objLayer3D As so3DLayer
If SuperMap1.Layers.Count < 1 Then Exit Sub
Set objLayer = SuperMap1.Layers.Item(1)
Set objDt = objLayer.Dataset
If objDt Is Nothing Then Exit Sub
Super3D1.AddResourceLocation App.Path & "\res"
Set objLayer3D = Super3D1.Layer3Ds.AddDataset(objDt, True)
objLayer3D.RelativeHeightField = "z"
Super3D1.Refresh
End Sub
Private Sub btnZoomin_Click()
Super3D1.Action = sca3DZoomIn
End Sub
Private Sub btnZoomout_Click()
Super3D1.Action = sca3DZoomOut
End Sub
Private Sub btnPan_Click()
Super3D1.Action = sca3DPan
End Sub
Private Sub btnPanRotate_Click()
Super3D1.Action = sca3DPanRotate
End Sub
Private Sub Form_Load()
SuperMap1.Connect SuperWorkspace1.Handle
Super3D1.Connect SuperWorkspace1.Handle
Dim strDataPath As String
Dim objDs As soDataSource
Dim objDt As soDataset
strDataPath = App.Path & "\..\data\city3d\city3d.sdb"
Set objDs = SuperWorkspace1.OpenDataSource(strDataPath, "city3d", sceSDBPlus, False)
If Not objDs Is Nothing Then
Set objDt = objDs.Datasets.Item(1)
If Not objDt Is Nothing Then
SuperMap1.Layers.AddDataset objDt, True
SuperMap1.Refresh
End If
Else
MsgBox "数据源打开失败", vbInformation
Exit Sub
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
Super3D1.Close
Super3D1.Disconnect
SuperMap1.Close
SuperMap1.Disconnect
SuperWorkspace1.Close
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -