天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 40|回复: 0

In the follwing sample code double rot2; is the rotation of the text you a...

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
Acad::ErrorStatus setAlignmentPoint(AcDbText &text, const AcGePoint3d &pt)
{
        if (!text.isWriteEnabled())
                return Acad::eNotOpenForWrite;

        AcDb::TextHorzMode hmode = text.horizontalMode();
        AcDb::TextVertMode vmode = text.verticalMode();

        if ((hmode == AcDb::kTextLeft) && (vmode == AcDb::kTextBase))
                return text.setPosition(pt);                // only here position() is relevant and alignmentPoint() not
        else
                return text.setAlignmentPoint(pt);        // here alignmentPoint() is relevant
}

AcGePoint3d getAlignmentPoint(const AcDbText &text)
{
        AcDb::TextHorzMode hmode = text.horizontalMode();
        AcDb::TextVertMode vmode = text.verticalMode();

        if ((hmode == AcDb::kTextLeft) && (vmode == AcDb::kTextBase))
                return text.position();                  // only here position() is relevant and alignmentPoint() not
        else
                return text.alignmentPoint(); // here alignmentPoint() is relevant
}

void cmdTestText()
{
        ads_point    pt;
        ads_name     ent;
        AcDbObjectId objId;

        if (acedEntSel(_T("\nSelect Text: "), ent, pt) != RTNORM)
                return;

        if (acdbGetObjectId(objId, ent) != Acad::eOk) //ads_name-->AcDbObjectId
                return;

        Acad::ErrorStatus es;
        AcDbText *pText = NULL;
        AcDbText *pText2 = NULL;
        AcGePoint3d     ptAlign;
        AcGeVector3d        vNormal;
        double          rot = 0.0;
        Adesk::Boolean bMirrX=false, bMirrY=false;

        if ( (es=acdbOpenObject(pText, objId, AcDb::kForRead)) == Acad::eOk )
        {
                pText2 = AcDbText::cast(pText->clone()); // Create a clone
                pText2->setDatabaseDefaults();
                pText2->setColorIndex(1); //red
                pText2->mirrorInX(false);
                pText2->mirrorInY(false);

                ptAlign = getAlignmentPoint(*pText);
                vNormal = pText->normal();
                rot = pText->rotation();

                bMirrX = pText->isMirroredInX();
                bMirrY = pText->isMirroredInY();
                pText->close();               
        }

        AcGeVector3d vx, vy, vz(vNormal);
        vx = vz.perpVector();
        vy = (vz.crossProduct(vx)).normalize();

        AcGeVector3d vxRot(vx);
        vxRot.rotateBy(rot, vz); // The rotated x-Axis

        AcGeMatrix3d mat;
        mat.setCoordSystem(ptAlign, vx, vy, vz);

        bool bNeedZMirror = false;

        if (bMirrX)
        {
                bNeedZMirror = !bNeedZMirror;
                AcGePlane planeXZ(ptAlign, AcGeVector3d::kYAxis);
                AcGeMatrix3d matMirrY;
                matMirrY.setToMirroring(planeXZ);
                mat.preMultBy(matMirrY);
        }
        if (bMirrY)
        {
                bNeedZMirror = !bNeedZMirror;
                AcGePlane plane(ptAlign, AcGeVector3d::kXAxis);
                AcGeMatrix3d matMirr;
                matMirr.setToMirroring(plane);
                mat.preMultBy(matMirr);
        }
        if (bNeedZMirror)
        {
                // Make sure that mat is not mirroring
                AcGePlane plane(AcGePoint3d::kOrigin, AcGeVector3d::kZAxis);
                AcGeMatrix3d matMirr;
                matMirr.setToMirroring(plane);
                mat.preMultBy(matMirr);
        }

        AcGeVector3d vx2, vy2, vz2;
        AcGePoint3d origin;
        mat.getCoordSystem(origin, vx2, vy2, vz2);

        // Calculate rotation value of vxRot with respect to vx2 and vz2
        double rot2 = vx2.angleTo(vxRot, vz2);

        // Create a second Text entity without mirroring
        pText2->setNormal(vz2);
        pText2->setRotation(rot2);
        postToDb(pText2);
        es = setAlignmentPoint(*pText2, ptAlign);
        es = pText2->adjustAlignment();
        pText2->close();


在下面的示例代码double rot2;中,是要查找的文本的旋转。



函数void cmdTestText()要求选择文本。然后创建一个外观相同的红色文本副本,该文本的两个镜像标志都设置为false,并将其添加到数据库中。

 

 

 

 

In the follwing sample code  double rot2;  is the rotation of the text you a...

该用户从未签到

主题

0

回帖

0

积分

管理员

积分
0
发表于 2024-7-28 09:28:43 | 显示全部楼层
  法拉利膜材作为一种高性能的建筑材料,在建筑、汽车及广告等多个领域有着广泛的应用。以下是对法拉利膜材型号、特点及优点的详细分析:
[img]http://www.mjgou.com/data/attachment/forum/202403/13/223041uiqmeujen4jjj6zv.jpg[/img]
[b]一、法拉利膜材型号[/b]
法拉利膜材有多种型号,包括但不限于以下几种:1302 S2 Flexlight Advanced:这是一种高性能IV型柔性复合膜材,以其卓越的透光性、耐久性和易维护性而受到青睐。942、1202 S2、1002 S2、902 S2、1212 S2、912 S2:这些型号同样属于法拉利膜材系列,各自具有不同的特性和适用范围,但具体特点需根据具体型号进一步分析。需要注意的是,法拉利膜材的型号可能随着产品更新换代而有所变化,具体型号及其特性请参考最新产品资料。
[img=860,1255]http://www.mjgou.com/data/attachment/forum/202403/13/223254bbblwlbvbvsbwlsl.jpg[/img]
[b]二、法拉利膜材特点[/b]
法拉利膜材的特点主要体现在以下几个方面:
1、高强度与耐用性:法拉利膜材采用高强度材料制成,具有良好的抗拉强度和撕裂强度,能够承受较大的外力作用而不易破损。耐用性强,能够在恶劣气候条件下保持稳定的性能,延长使用寿命。
2、透光性与美观性:部分型号如1302 S2 Flexlight Advanced具有高透光性,能够在保持室内光线充足的同时,提供清晰的视野。膜材表面平整光滑,色彩丰富多样,能够满足不同建筑和装饰需求,提升整体美观性。
3、轻质与灵活性:法拉利膜材重量较轻,便于运输和安装,能够降低施工成本和时间。膜材具有一定的柔韧性,能够适应各种复杂形状和结构的设计要求。
4、环保与可回收性:法拉利膜材符合环保要求,部分材料可回收利用,减少了对环境的影响。
[img]http://www.mjgou.com/data/attachment/forum/202403/13/223128owhn0099rrds5h5y.jpg[/img]
[b]三、法拉利膜材优点[/b]
法拉利膜材的优点主要体现在以下几个方面:
1、提升建筑性能:高强度与耐用性使得法拉利膜材能够提升建筑的稳定性和安全性,延长使用寿命。透光性与美观性使得建筑内部光线充足、视野开阔,同时提升整体美观度。
2、降低施工成本:轻质特性使得运输和安装成本降低,施工效率提高。膜材的柔韧性使得施工更加灵活多变,能够适应各种复杂地形和结构要求。
3、节能环保:部分材料可回收利用,符合环保要求,减少了对环境的影响。良好的透光性能够减少室内照明需求,降低能耗。
4、广泛应用领域:
法拉利膜材不仅适用于建筑领域(如体育设施、商业设施、文化设施、交通设施等),还广泛应用于汽车及广告领域(如高档车辆贴膜保护和装饰、广告招贴等),展现出其多功能的特性。

综上所述,法拉利膜材以其高强度、耐用性、透光性、美观性、轻质灵活性以及环保可回收性等优点,在建筑、汽车及广告等多个领域发挥着重要作用。具体型号的选择应根据实际需求和应用场景进行综合考虑。
[url=http://www.mjgou.com/forum-17-1.html][size=6991][color=Red]法拉利膜材中国代理商 - 膜结构网[/color][/size][/url]
In the follwing sample code  double rot2;  is the rotation of the text you a...

该用户从未签到

主题

0

回帖

2

积分

新手上路

积分
2
发表于 2024-8-6 10:42:43 | 显示全部楼层
圣戈班膜材作为圣戈班集团旗下的重要产品系列,以其优异的性能和广泛的应用领域在市场上享有很高的声誉。以下是对圣戈班膜材的详细分析:
[b]一、公司背景与实力[/b]
集团概况:圣戈班集团(Saint-Gobain)创立于1665年,总部设在法国,是全球建材行业的领军企业之一。圣戈班不仅在建筑领域有着卓越的表现,还在汽车玻璃、管道系统、耐火陶瓷等多个领域占据重要地位。
市场地位:圣戈班是全球工业集团百强之一,业务运营遍布全球75个国家和地区,全球员工超过16万人。其在建材领域的创新技术和高品质产品赢得了全球市场的广泛认可。
[b]二、产品特点[/b]
高性能与多样性:圣戈班膜材种类繁多,包括PTFE膜材、PVC膜材等多种类型,满足不同应用场景的需求。PTFE膜材作为圣戈班的明星产品之一,具有防火性能、抗蠕变性能、自洁性能、透光率高、耐久性能强等特点。
耐候性与耐久性:圣戈班膜材具有优异的耐候性,能够抵抗紫外线、高温、低温等极端天气条件的侵蚀。耐久性能强,使用寿命长,能够在各种恶劣环境下保持稳定的性能。
自洁性能:部分圣戈班膜材表面经过特殊处理,具有高度的自洁性能。依靠自然的雨水冲刷即可保持材料表面的清洁和清白。
环保与节能:圣戈班膜材注重环保性能,部分产品可回收再利用,符合绿色建筑的理念。其高透光性和良好的隔热性能有助于减少建筑能耗,提升能源利用效率。
[b]三、应用领域[/b]
圣戈班膜材广泛应用于多个领域,包括但不限于:
建筑领域:作为屋顶、墙面、遮阳篷等建筑材料,提升建筑的美观性和实用性。在大型公共建筑、体育场馆、展览馆等场所得到广泛应用。
工业领域:在化工、食品、医药等行业中作为反应釜、储罐等设备的内衬材料,提供耐腐蚀、耐高温的解决方案。
环保与能源领域:在污水处理、空气净化等领域发挥重要作用,助力环保事业的发展。
[b]四、技术创新与发展[/b]
圣戈班集团一直致力于技术创新和产品研发,不断推出适应市场需求的新产品。其在膜材领域的创新技术包括:
高性能涂层技术:提升膜材的耐候性、耐久性和自洁性能。
复合材料技术:通过材料复合策略提升膜材的综合性能。
环保材料研发:开发可回收再利用的环保型膜材产品。
[b]五、市场认可度与前景[/b]
圣戈班膜材凭借其优异的性能和广泛的应用领域在市场上赢得了广泛的认可。随着全球对绿色建筑和可持续发展的重视不断加深,圣戈班膜材的市场前景将更加广阔。未来,圣戈班将继续加大在膜材领域的研发投入,推动产品的不断创新和升级,为全球客户提供更加优质、环保、高效的解决方案。

 

 

 

 

In the follwing sample code  double rot2;  is the rotation of the text you a...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|中国膜结构网_中国空间膜结构协会

GMT+8, 2024-11-1 15:21 , Processed in 0.186752 second(s), 29 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表