常见问题和解答 (FAQ)

搜索 FAQ




专题报告

专题报告

在“专题报告”板块中您能发现许多实用的技术文章和提示技巧,方便您使用 Dlubal 软件。

新闻简报

您能定期收到关于公司新闻、实用技巧、预定活动、促销和优惠券的信息。

  • 回答

    摩擦力是非线性的,因此只能通过与杆件端部释放铰链的界面进行修改。

    尽管如此,必须首先创建杆件端部释放。 然后,IMemberHinge界面被带到构件端释放,然后到非线性(这里IFriction)。 那么 就可以使用方法GetDataSetData来修改数据(这里为Friction ):

    Sub SetMemberHingeFriction()

    Dim model As RFEM5.model
    设置model = GetObject(,“RFEM5.Model”)
    model.GetApplication.LockLicense

    错误转到e

    Dim data as IModelData
    设置data = model.GetModelData

    Dim hinge(0:0)设为RFEM5.MemberHinge

    铰(0).No = 1
    (0).RotationalConstantX = 1
    (0).RotationalConstantY = 2
    (0).RotationalConstantZ = 3
    (0).TranslationalConstantX = 4
    (0).TranslationalConstantY = 5
    (0).TranslationalConstantZ = 6
    (0)铰链=“杆件铰1”
        
    铰(0).TranslationalNonlinearityX = FrictionAType

    data.PrepareModification
    data.SetMemberHinges hing
    data.FinishModification
        
    '获取杆件接口'
    Dim imemhing In IMemberHinge
    设置imemhing = data.GetMemberHinge(1,AtNo)
        
    '非线性接口'
    DimiFric as IFriction
    设置iFric = imemhing.GetNonlinearity(AlongAxisX)
        
    '获取摩擦数据'
    Dim fric As Friction
    fric = iFric.GetData
        
    fric.Coefficient1 = 0.3
        
    '设置摩擦力数据
    data.PrepareModification
    软件开发iFric
    data.FinishModification
        
        
    e:如果Err.Number <> 0那么MsgBox Err.Description ,, Err.Source

    设置数据=没有
    model.GetApplication.UnlockLicense
    设置模型=没有

    结束子


    对于系数Vy + Vz,Coeffcient2用于设置第二个系数。 摩擦副窗口中的平移弹簧由杆端铰接的平移弹簧控制。 在具体情况下,它是沿x方向的TranslationalConstantX(见图01)。

  • 回答

    如果自创程序只能打开或继续使用RFEM或RSTAB,则使用异步计算。 在完成计算后,事件将通过委托进行传递。 您可以在下面的下载区域的Visual Studio项目中找到C#示例。
  • 回答

    该检查可以由程序自动执行

    • “IApplication.LockLicense()”
    • “bool isLicensed = IApplication.IsComLicensed()”
    • “IApplication.UnlockLicense()”


  • 回答

    是的,可以通过COM接口创建节点释放。 这是一个例子:

    Sububod_release()

    Dim iApp As RFEM5.Application
    Dim iModel As RFEM5.model
        
    错误转到e
        
    设置iApp = GetObject(,“RFEM5.Application”)
    iApp.LockLicense
            
    test = iApp.GetModelCount
    设置iModel = iApp.GetModel(0)
            
    Dim iModeldata作为RFEM5.iModeldata
    设置iModeldata = iModel.GetModelData
            
            
    '需要使用节点释放杆件'
    该系统不能与已发布的对象相同
    Dim nodRel As NodalRelease
    nodRel.Location = OriginalLocationType
    nodRel.AxisSystem = LocalFromLine
    nodRel.AxisSystemFromObjectNo = 2
    nodRel.Comment =“测试节点释放”
    nodRel.MemberHingeNo = 1
    nodRel.NodeNo = 1
    nodRel.ReleasedMembers = 1
            
    iModeldata.PrepareModification
    iModeldata.SetNodalRelease nodRel
    iModeldata.FinishModification
            
            
    e:如果Err.Number <> 0那么MsgBox Err.description ,, Err.Source
        
    iApp.UnlockLicense


    结束子


    请注意,局部坐标系可能与释放的杆件的元素不同。

  • 回答

    要传递多个元素,首先需要在VBA中创建一个字段(数组):

    Dim nodes(0~2)表示为RFEM5.Node

    您可以使用方法IModelData.SetNodes()将所有节点一次传送到该区域(此处为三个元素0,1,2)。

    这些方法也适用于以下结构构件,例如:

    IModelData.SetLines()
    IModelData.SetMembers()
    IModelData.SetSurfaces()
  • 回答

    主对象不是线对象,而是类型为NurbSpline的对象。
    这里有一个创建Nurbs样条曲线的简短示例:

    '--------------------------------------------- -------------------------------------------------
    Sub nurbs_test()
    '--------------------------------------------- -------------------------------------------------

    Dim model As RFEM5.model
    设置model = GetObject(,“RFEM5.Model”)
    model.GetApplication.LockLicense

    错误转到e

    Dim data as IModelData
    设置data = model.GetModelData

    '定义节点数组
    Dim nodes(0~2)As RFEM5.Node
        
    nodes(0).No = 1
    nodes(0).Type =默认值
    nodes(0).CS =笛卡尔坐标
    nodes(0).X = 1
    nodes(0).Y = 1
    nodes(0)。Z = 0

    节点(1).No = 2
    nodes(1).Type =缺省值
    nodes(1).CS =笛卡尔坐标
    节点(1).X = 2
    nodes(1).Y = 1
    nodes(1)。Z = -1
        
    节点(2).No = 3
    nodes(2).Type = Default
    nodes(2).CS =笛卡尔坐标
    nodes(2).RefObjectNo = 2
    nodes(2).X = 0
    nodes(2).Y = 1
    nodes(2)。Z = 0
        
    Dim darr1(0到5)Double
    darr1(0)= 1
    darr1(1)= 2
    darr1(2)= 3
    darr1(3)= 4
    darr1(4)= 5
    darr1(5)= 6
        
    Dim darr2(0到2)Double
    darr2(0)= 1
    darr2(1)= 1
    darr2(2)= 1
        
    Dim ns As NurbSpline
    ns.General.No = 2
    ns.General.Type = NurbSplineType
    ns.General.NodeList =“1,2,3”
    ns.General.Comment =“2”
    ns.Knots = darr1
    nrsOrder = 3
    ns.Weights = darr2
        
    data.PrepareModification
    data.SetNodes节点
    data.SetNurbSpline ns
    e:data.FinishModification
    如果Err.Number <> 0那么MsgBox Err.Description ,, Err.Source

    设置数据=没有
    model.GetApplication.UnlockLicense
    设置模型=没有

    结束子
  • 回答

    基本上对COM接口所做的任何更改都会在相应的附加模块的更新报告中命名。 所有的更新报告都在以下链接中提供

    如果COM接口有变化,那么它们会被列在那里。 特别是当旧的COM接口从RSTAB6 / RFEM3转换为RSTAB8 / RFEM5时,由于从VBA中的tlbs变为带有dll的集成解决方案,无法保证完全的兼容性。

    通常可以在当前COM接口中覆盖dll而不会出现任何问题。 对于其他备份,始终建议备份旧文件。
  • 回答

    不,这是不可能的。 无法通过COM接口打开或管理报表。 唯一能做的就是访问列表中创建的报表数量。

    可以访问模板日志。 以下常见问题解答说明了这一点。 这可以通过RFEM / RSTAB的COM接口控制,而不是通过Windows的一般功能控制。
  • 回答

    每个模块都有自己计算模块中壳体的方法。 以下是模型计算的各个模块的计算方法:

    RF- / Timber - IModuleCase - > Calculate()
    RF- / STEEL EC3 - ICase - > moCalculate()
    RF- / ALUMINIUM - ICase - > moCalculate()
    RF- / STEEL - ActualCase - > stResultsCalculate()
    RF稳定性 - IsbCase - > sbResultsCalculate()
    RF- / DYNAM Pro - IDynamModule - > Calculate()
    RF- / CONCRETE Members - IcoCase - > coResultsCalculate()
    RF- / CONCRETE Surfaces - IcoCase - > coResultsCalculate()




  • 回答

    对于杆件,RFEM会显示相应的内力,以及结果组合中的最大值和最小值。 由于数据量很大,面异常仅显示每个网格点的最大值和最小值。 未显示最大值或者最小值的相应内力。

    因此,RFEM计算结果组合中包含的所有荷载工况,荷载组合和结果组合,并相应地列出最大值和最小值。 如果希望对结果组合的结果值赋予相应的内力,则搜索结果组合中包含的单元,并将其与相应的值进行比较。

    如果找到荷载工况或荷载组合,则表面的每个网格点都会显示相应的内力。

    为了更快速地进行评估,还可以使用COM接口。

1 - 1020

联系我们

Kontakt zu Dlubal

您找到想找的问题和解答了吗?
如果没有,请通过邮件、在线聊天工具以及论坛技术支持联系我们或者把您的问题通过网上表格递交给我们。

+49 9673 9203 0

(可要求接中文热线)

info@dlubal.com

初学者

Erste Schritte

我们在这里为初学者提供了重要的提示和建议,以便用户更加容易快速的掌握使用我们的基本软件 RFEM 和 RSTAB。

优秀的技术支持

“谢谢你们提供的实用信息。

我想向你们的技术支持团队表示感谢!给我印象深刻的是每次都快速、专业的解答我的问题。在建筑结构行业中,我使用了几个软件,包括服务合同,但是你们的技术支持是最好的。”