Chuyển đến nội dung
Diễn đàn CADViet

Vạn Vô Thường

Thành viên
  • Số lượng nội dung

    64
  • Đã tham gia

  • Lần ghé thăm cuối

  • Ngày trúng

    2

Bài đăng được đăng bởi Vạn Vô Thường


  1. chào các anh chị, em đang tìm hiểu cách hiển thị giá trị scale của một block attribute trong chính nội dụng của block đó , giả sử sau khi minh scale bockattribute đó lên 5 lần thì trong nội dung của nó là 1:5 

    ví dụ

    em có bock attribute như hình dưới

    image.png.db9c4c108af52b2bd1b34227aa326516.png

    sau khi em scale nó lên 5 lần thì nó sẽ thành như vầy :

    image.png.496e929068a6ff57c29db14967343226.png

     

    mong nhận được sự giúp đỡ của các anh / chị

     

    em chân thành cảm ơn!

     


  2. theo mình thì trước tiên offset cái đường thẳng đầu tiên ra để ra được 2 đường thẳng song song, sau đó vẽ đường line có điểm xuất phát nằm trên đường thẳng đầu tiên và bắt điểm vuông góc với đường thẳng đã offset, thế là được đường vuông góc, sau đó xóa cái đường đã offset kia đi


  3. mình thì không biết cách tạo block giống như ý của bạn, nhưng mình nghĩ bạn cứ tạo block bình thường và tạo ra thêm một layer mới, gán block này vào layer đó, sau đó khóa layer đó lại, thì lúc chọn những thứ khác và di chuyển đi thì block này cũng không di chuyển đi được, thậm chí bạn muốn move nó đi cũng không được, trừ khi mở khóa layer đó ra


  4. cảm ơn bạn Hung_neymar đã trả lời, nhưng chắc tại mình đặt câu hỏi chưa đầy đủ nên bạn hiểu sai ý,  cụ thể là mình muốn vẽ một hình 3d (giả sử là một hình hộp vuông thôi) nhưng khi in ra thì những cái nét bị che khuất của khối đó sẽ hiển thị là nét đứt, chứ không phải là 2 khối 3d tách rời với hai kiểu đường nét, image.png.f1ba2ce0401fad5d85c8acfe3347e89a.png  

    giống như khối này, nó chỉ là một khối 3d thôi, nhưng làm sao để khi in ra thì những cạnh phía sau bị che bởi chính khối đó sẽ là nét đứt. (hoặc bất kể là khối 3d nào, nếu bị khối 3d khác che khuất thì những phần bị che khuất của khối 3d đó sẽ hiển thị là nét đứt)

     

    hy vọng nhận được sự giúp đỡ của bạn !


  5. các anh chị cho em hỏi, em có cái hình 3d, mà muốn hiển thị nét đứt cho nó trong layout như vầy : image.png.ceb68149bb5a2c03ed32c61423c10e53.png 

     

    không xuất sang 2d mà vẫn hiển thị được nét đứt như vầy ấy, em có lên mạng tìm về cách chỉnh trong visual style nhưng toàn tiếng anh, mà mò mãi ko ra, anh chị nào biết chỉ dùm em . em cảm ơn ạ


  6. mình có gặp vấn đề bản vẽ nặng ký, xóa linetype , pu các kiểu mà không được, bản vẽ vẫn rất nặng ký dù bản vẽ có rất ít chi tiêt, nên mình lên cad viet tìm hiểu thi nhận ra nếu bản vẽ đang vẽ vô tình bật infer image.png.22f13cf4b312c4b0116a628fdd010360.png thì khi vẽ các đối tượng bị liên kết với nhau thế nào đó, và làm cho bản vẽ nặng ký. nếu quét chọn đối tượng trong bản vẽ của các bạn mà xuất hiện như vầy image.png.ca43c26ead99e906d46f4b2f4940f64b.pngthì chính xác là lúc vẽ đã bị bật infer rôi, cách giải quyết thì làm theo bài này :  ( dùng lệnh delcon ) 

     


  7. Gửi các bạn lệnh su khối 3d mà ko làm mất đối tượng bị su, mình thấy đã có lệnh này với tên gọi trim3d hay gì đó rồi quên mất ko nhớ nữa, nhưng có lẽ sẽ có người cần lệnh này, 

    cách sử dụng:

    gõ lệnh SPU -> chọn đối tượng cần su -> chọn đối tượng tham chiếu -> chọn lại đối tượng cần su -> enter 2 lần 

    (có thể chọn nhiều đối tượng tham chiếu )

    ví dụ:

        mình cần đục lỗ một hình hộp chữ nhật bằng 2 hình trụ tròn, mình sẽ làm :

    gõ spu -> chọn hình hộp chữ nhật -> chọn 2 hình trụ tròn -> chọn lại hình hộp chữ nhật -> enter 2 lần

     

     

     

     

    vba code.zip


  8. Chào mọi người, nhờ mọi người giúp đỡ

    Chẳng là mình có sử dụng phần mêm thống kê thép HCAD để thống kê thép của dự án. Nhưng chủ đầu tư lại yêu cầu chuyển ra file excel mà mính không cách nào chuyển được. ( mặc dù trong HCAD có chức năng chuyển nhưng không thể sử dụng) . Vậy bạn nào có hảo tâm nhờ chuyển giùm mình file đính kèm về excel với ạ. Mình cám ơn .

     

    http://www.cadviet.com/upfiles/7/162473_ct1__thong_ke.dwg

    bạn upload file lên chỗ khác đi, google drive hay mediafile chẳng hạn, upload ở cadviet ko tải được, cadviet bị lỗi rồi


  9.  

    Mình có ví dụ muốn chuyển dữ liệu lấy kích thước đường bao ngoài của chi tiết (chiều dài và chiều rộng) chuyển sang file Excel mà tìm trên này không thấy lisp nào giống, nhờ mọi người giúp đỡ,

     

    Có ví dụ mình họa file Cad có biên dạng muốn chuyển Mình có ví dụ muốn chuyển dữ liệu lấy kích thước đường bao ngoài của chi tiết (chiều dài và chiều rộng) chuyển sang file Excel mà tìm trên này không thấy lisp nào giống, nhờ mọi người giúp đỡ,

     

    Có ví dụ mình họa file Cad có biên dạng muốn chuyển và file Excel số liệu mong muốn để mọi người tham khảo:

     

    http://www.cadviet.com/upfiles/7/26898_xuat_du_lieu_cad_qua_excel_1.dwg

     

    P/s: file Excel mình upload mãi không lên được chắc do lỗi mạng, mình muốn xuất ra bảng Excel như sau:

     

    Cột 1           cột 2                cột 3

    Chi tiết 1      120                  50

    Chi tiết 2        80                  80

    Chi tiết 3      100                  60

     
    Thanks all!

     

    file cad ko tải được bạn ơi, link bị die rồi, có phải bạn đang muốn làm cái bẳng thống kê khối lượng cho bản vẽ ko?


  10. Cám ơn anh Mèo Mun đã quan tâm và trả lời.

    Chính xác thì em vẫn đang làm như cách anh nói, nhưng do công việc phải làm cần copy text mẫu > đặt đúng vị trí > sửa text lặp đi lặp lại đến hàng chục nghìn lần trên 1 bản vẽ nên nếu có lisp như vậy bản thân em thấy rút ngắn được khá nhiều thời gian, đẩy nhanh tốc độ thực hiện công việc. 

    Em đã search trên diễn đàn mà không thấy có lisp tương tự hay cách làm ngắn hơn.

    Mong được các anh chị giúp đỡ, nếu e có gì sai sót mong các anh chị chỉ bảo thêm.

    Em xin cảm ơn.

    bạn nói nó lặp lại rất nhiều lần , có phải là mỗi lần thực hiện thì bạn sẽ nhập vào nôi dung text và pick điểm thôi phải ko, vậy cái nội dung text bạn cần nhập nó có giống nhau giữa mỗi lần nhập ko , hay là nó khác, nếu nó khác có phải bạn đọc nội dung text đó từ một file nào đó để nhập vào dạng như một list trong excel thì nên nhờ lập trình tự động đọc từ file excel ra còn bạn chỉ pick thôi, chứ mỗi lần nhập rồi lại pick, lại nhập lại nó ko giảm thiểu được mấy thời gian cả


  11. cả nhà mình không có ai khắc phục được cách này ah? hay là không có ai chưa bị lỗi như em vậy...cho em vài lời khuyên với ạ...

    thanks cả nhà.

    Theo như mình thấy thì nó thông báo là autocad 2008 đã được cài đặt trên máy bạn rồi, lần này bạn cài lại nó ko yêu cầu cài autocad 2008 nữa mà nó thấy thiếu cái trueview đó nên nó đề nghị là sẽ cài thêm cái đó vào máy, bạn nên nhờ ai đó rành về cài đặt phần mềm làm giúp việc này, vì thực sự bạn ko cần cài autocad gì hết, nó đã có sẵn rồi, bạn thử click vào nút next trên cái hình thứ hai bạn gửi xem


  12. chúng ta thường đặt mật khẩu chống view code trong excel, nhưng phương pháp này có thực sự hiệu quả, đây là một bài viết copy từ trên mạng share về cách thức làm thế nào để view code excel :
     
    trước tiên giả sử chúng ta có một file excel trong đó có module vba bị đặt mật khẩu, các bạn hãy mở file excel đó lên, và tạo thêm một tài liệu mới bằng cách vào file->new->create trên chính cái excel đang mở bị đặt mật khẩu chống viewcode này và sau đó dĩ nhiên file mới này có thể tạo module vba như thường:
     
    b1 : tạo module1 và dán code này vào :

    Option Explicit
    
    Private Const PAGE_EXECUTE_READWRITE = &H40
    
    Private Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" _
            (Destination As Long, Source As Long, ByVal Length As Long)
    
    Private Declare Function VirtualProtect Lib "kernel32" (lpAddress As Long, _
            ByVal dwSize As Long, ByVal flNewProtect As Long, lpflOldProtect As Long) As Long
    
    Private Declare Function GetModuleHandleA Lib "kernel32" (ByVal lpModuleName As String) As Long
    
    Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, _
            ByVal lpProcName As String) As Long
    
    Private Declare Function DialogBoxParam Lib "user32" Alias "DialogBoxParamA" (ByVal hInstance As Long, _
            ByVal pTemplateName As Long, ByVal hWndParent As Long, _
            ByVal lpDialogFunc As Long, ByVal dwInitParam As Long) As Integer
    
    Dim HookBytes(0 To 5) As Byte
    Dim OriginBytes(0 To 5) As Byte
    Dim pFunc As Long
    Dim Flag As Boolean
    
    Private Function GetPtr(ByVal Value As Long) As Long
        GetPtr = Value
    End Function
    
    Public Sub RecoverBytes()
        If Flag Then MoveMemory ByVal pFunc, ByVal VarPtr(OriginBytes(0)), 6
    End Sub
    
    Public Function Hook() As Boolean
        Dim TmpBytes(0 To 5) As Byte
        Dim p As Long
        Dim OriginProtect As Long
    
        Hook = False
    
        pFunc = GetProcAddress(GetModuleHandleA("user32.dll"), "DialogBoxParamA")
    
    
        If VirtualProtect(ByVal pFunc, 6, PAGE_EXECUTE_READWRITE, OriginProtect) <> 0 Then
    
            MoveMemory ByVal VarPtr(TmpBytes(0)), ByVal pFunc, 6
            If TmpBytes(0) <> &H68 Then
    
                MoveMemory ByVal VarPtr(OriginBytes(0)), ByVal pFunc, 6
    
                p = GetPtr(AddressOf MyDialogBoxParam)
    
                HookBytes(0) = &H68
                MoveMemory ByVal VarPtr(HookBytes(1)), ByVal VarPtr(p), 4
                HookBytes(5) = &HC3
    
                MoveMemory ByVal pFunc, ByVal VarPtr(HookBytes(0)), 6
                Flag = True
                Hook = True
            End If
        End If
    End Function
    
    Private Function MyDialogBoxParam(ByVal hInstance As Long, _
            ByVal pTemplateName As Long, ByVal hWndParent As Long, _
            ByVal lpDialogFunc As Long, ByVal dwInitParam As Long) As Integer
        If pTemplateName = 4070 Then
            MyDialogBoxParam = 1
        Else
            RecoverBytes
            MyDialogBoxParam = DialogBoxParam(hInstance, pTemplateName, _
                               hWndParent, lpDialogFunc, dwInitParam)
            Hook
        End If
    End Function
    
    
     

     

    B2: tao module2 dán code này vào mục đích để chạy :

     

    Sub unprotected()
        If Hook Then
            MsgBox "VBA Project is unprotected!", vbInformation, "*****"
        End If
    End Sub
     

    tiếp theo chỉ việc chạy module2 này và cái workbook chống viewcode kia đã bị phá password
     
    tham khảo thêm tại : 

     
    https://stackoverflow.com/questions/1026483/is-there-a-way-to-crack-the-password-on-an-excel-vba-project

    • Vote tăng 1

  13. Các bác cho em hỏi là lệnh khoanh mây ứng dụng để làm việc gì ạ ? Em thấy một số bản vẽ người ta khoanh mây nhưng hình như  còn mục đích gì ngoài là tạo cái nhìn trực quan cho người xem. Em cảm ơn !!!

    khi người ta vẽ xong bản vẽ rồi, và thấy cần thay đổi ở một phần nào đó trong bản vẽ họ sẽ dùng cái đám mây khoanh vùng đó lại, mục đích là để người khác khi đọc vào sẽ biêt' là vùng đó có sự thanh đổi để so sánh là thay đổi gì giữa bản vẽ mới này với bản vẽ đã phát ra hồi trước. 

×