What s New Ten dokument zawiera ogólny przegląd nowych funkcji Alphacam 2015 R2
Zawartość Ważne Informacje... 4 Wsparcie systemu operacyjnego... 4 Data Wygaśnięcia Licencji Alphacam... 4 Instalacja Alphacam 2015 R2... 4 Visual Basic 7.0... 4 Alphacam Art... 4 Wprowadzenie... 5 Interfejs Użytkownika... 6 Nowe Radialne Manu... 6 Importowanie pasków Wstążkowych z poprzedniej wersji programu (Alphacam 2015 R1)... 6 Przyciski podziału lokalizowane przez użytkownika... 7 Drzewo operacyjne... 7 AlphaEdit Szybki Pasek Narzędzi... 7 Menedżer Części... 8 Operacje tworzenia części... 8 Ulepszenia w Rozpoznawaniu Cech Modelu... 9 Konfiguracja... 9 Rozpoznawanie Cech Modelu na Płaszczyznach Ortogonalnych... 9 Ulepszenia do Rozpoznawania Cech Obrysu Konturów... 10 Rendering Cech... 10 Zaawansowana Obróbka 5 osiowa... 11 Nowy Cykl Obróbki Zgrubnej 5-osiowej... 11 Nowy Cykl Obróbki Wirefreme... 11 Nowy Cykl Obróbki Swarf... 11 Wybierz model bryłowy STL jako Powierzchnie Kontrolne... 11 Modele STL można teraz wybierać jako powierzchnie kontrolne, aby upewnić się, że ścieżka narzędzia nie zostanie oderwana... 11 Symulacja Solid... 12 Odwzorowanie tekstury dla realistycznego wyglądu modelu... 12 Rozszerzenia w Nestingu... 13 Rozszerzenia w Nestingu... 13 Nowe Funkcje Specjalne w Nestingu... 13 Komenda Zgrubna/Wykańczająca... 14 Opcja Profil poprzedniego narzędzia... 14 Translatory CAD... 15 Vero Software Limited www.alphacam.com 2 of 35
Wsparcie Google Sketchup 2015... 15 Solid Edge ST7... 15 Autodesk Inventor 2016... 15 Part Modeler... 16 Instalacja i lokalizacja dokumentów... 16 Nowa opcja importowania plików IGES... 16 Ulepszenia w Interfejsie Użytkownika... 16 Obsługiwane Wersje Plików CAD... 17 W zależności od poziomu i modułu, Alphacam importuje następujące wersje plików CAD:... 17 Ulepszenia API... 18 Ulepszenia API... 18 Zgłoszenia konserwacyjne... 20 Wykaz najważniejszych funkcji poprzedniej wersji... 24 Alphacam 2015 R1... 24 Załącznik A Ulepszenia API w Alphacam 2015 R2... 25 API TurnData FeedOutDistance... 25 API TagData... 27 API MillTool SetSolidGeometry, SetHolderFromLibrary, SetHolderSolidGeometry... 28 API - SolidFeatures AlignDatumX, AlignDatumY, AlignDatumZ... 30 API - SolidFeatures SolidExtraction2, AutoExtract2... 31 Załącznik B Makra 64 bit VBA... 33 Wprowadzenie... 33 Ustalenie Deklaracji... 33 Ustalenie funkcji z typami wskaźników... 33 VBA 6 Kompatybilność wsteczna... 34 Testowanie Makr... 35 Elementy Aktywne X... 35 Vero Software Limited www.alphacam.com 3 of 35
Ważne Informacje Wsparcie systemu operacyjnego Alphacam 2015 R2 oraz Part Modeler nie zostanie zainstalowany w systemie operacyjnym Windows XP i Windows Vista. Program Alphacam 2015 R2 obsługiwany jest przez systemy operacyjne: Windows 7 - Professional, Enterprise, Ultimate Windows 8 - Professional, Enterprise W celu uzyskania dalszych informacji dotyczących instalacji lub wymagań systemowych proszę zapoznać się z informacjami znajdującymi się na stronie internetowej http://www.alphacam.pl. Data Wygaśnięcia Licencji Alphacam Wymagana data wygaśnięcia licencji dla Alphacam 2015 R2 to Marzec 2015 lub późniejsza. Na licencjach starszych, Alphacam 2015 R2 nie zostanie uruchomiony. Instalacja Alphacam 2015 R2 Podczas instalacji AlphaCAM 2015 R2 istnieje możliwość zainstalowania domyślnej wersji 32-bit lub nowej wersji 64 -bit. Korzyści korzystania z AlphaCAM 64-bit wymienione zostały w dalszej części tego dokumentu, zaleca się również zapoznanie z informacjami na temat makr podczas podejmowaniu decyzji, którą wersję zainstalować. Visual Basic 7.0 Alphacam 2015 R2 został uaktualniony do pracy z Visual Basic for Applications (VBA 7 7.0). VBA 7 jest obecnie wykorzystywana w 32 -bitowych i 64 -bitowych aplikacjach AlphaCAM i AlphaEdit. Wszystkie dodatki zainstalowane w Alphacam 2015 R2 zostały zaktualizowane do pracy z Visual Basic 7.0, zarówno z Alphacam 32-bit i 64 -bit. W przypadku tworzenia własnych dodatków w celu pracy na 64-bitowej wersji programu, dodatki mogą wymagać aktualizacji. W celu uzyskania dalszych informacji proszę zobaczyć Załącznik B. Alphacam Art Instalacja AlphaCAM Art z menu DVD automatycznie wykrywa, czy jest zainstalowana 32-bitowa czy 64-bitowa wersja programu AlphaCAM. Jeśli AlphaCAM Art ma być zainstalowany przez uruchomienie programu instalacyjnego z folderu na Płycie DVD \ AspireForAlphacam, zostanie wtedy zainstalowana 64-bitowa wersja programu. Aby zainstalować 32-bitową wersję należy uruchomić Install_Aspire_32bit.bat. Vero Software Limited www.alphacam.com 4 of 35
64-bit Alphacam Wprowadzenie Alphacam 2015 R2 jest teraz dostępny, jako plik instalacyjny w wersji 32-bitowej i 64-bitowej. Większość współczesnym komputerów posiada procesory 64-bitowe. Instalowanie Alphacam w wersji 64-bitowej oferuje następujące korzyści: Poprawa ładowania dużych modeli CAD oraz plików części Ulepszone zarządzanie pamięcią Szybsze przetwarzanie cykli obróbki Należy pamiętać, że Alphacam 32-bitowy można zainstalować i uruchomić na komputerach 64-bitowych, ale nasza rada jest taka, aby instalować wersję 64-bitową. Wszystkie dodatki, Alphacam zainstalowane w wersji Alphacam 2015 R2 zostały zaktualizowane do pracy z Visual Basic 7.0, zarówno, w Alphacam 32-bit i 64-bit. W przypadku tworzenia własnych dodatków w celu pracy na 64-bitowej wersji programu, dodatki mogą wymagać aktualizacji (w celu uzyskania dalszych informacji proszę zobaczyć Załącznik B). Vero Software Limited www.alphacam.com 5 of 35
Interfejs Użytkownika Nowe Radialne Manu Nowa dynamika Radial Menu zastępuje menu kontekstowe, pojawia się w momencie przytrzymania prawego przycisku myszy w obszarze graficznym programu Alphacam. Kluczowe funkcje menu radialnego to: Dynamiczne podpowiedzi wyświetlane pod kołem, gdy kursor myszy znajdzie się nad płytkami Pełna konfigurowalność (kliknij prawy przycisk myszy na pasku wstążki i wybierz opcję "Dostosuj Radial Menu") Importowanie pasków Wstążkowych z poprzedniej wersji programu (Alphacam 2015 R1) Alphacam 2015 R2 automatycznie używa istniejącej konfiguracji Wstążki utworzonej w wersji 2015 R1. Podczas importu lub eksportu konfiguracji Wstążki domyślna lokalizacja folderu to \... \ LICOMDIR\Ribbon Configurations. Konfiguracje niestandardowe mogą być zawarte na DVD w pliku z lokalizacją \Setup_Alphacam_2015\LICOMDIR\Ribbon Configurations folder. Vero Software Limited www.alphacam.com 6 of 35
Przyciski podziału lokalizowane przez użytkownika Aktualnie Wstążka i okno Szybkiego Dostosowania Dostępu pozwalają użytkownikowi umieścić istniejące przyciski podziału (takie jak Łuk) lub menu podręczne (takie jak Splajn) do lokalizacji zdefiniowanej przez użytkownika. Drzewo operacyjne W drzewie operacji projektu, operacje, które mają specjalne edycje, takie jak "Optymalizowana ścieżka narzędzia 5-osiowego " lub "Projekt 3D" posiadają znajdującą się obok gwiazdkę. Dodatkowo, klikając prawym przyciskiem na operację, aby zobaczyć menu kontekstowe, pokazana zostanie zaznaczona każda kolejna edycja. AlphaEdit Szybki Pasek Narzędzi Szybki Pasek Narzędzi został dodany, do AlphaEdit umożliwiając łatwy dostęp do najczęściej używanych poleceń, w tym operacji na plikach. Vero Software Limited www.alphacam.com 7 of 35
Menedżer Części Operacje tworzenia części Nowa wersja programu AlphaCAM umożliwia wybieranie operacji w celu tworzenia wielu części. Pierwszym etapem procesu jest tworzenie części z wybranych operacji. Część może być kopiowana, przesuwana lub obracana. Części mogą być kopiowane w kolejności ich występowania lub w kolejności występowania narzędzi. W momencie aktualizacji części istniej również możliwość aktualizacji części skopiowanej. Vero Software Limited www.alphacam.com 8 of 35
Ulepszenia w Rozpoznawaniu Cech Modelu Konfiguracja Funkcja Rozpoznawania Cech Modelu została rozszerzona o niezależne ustawienia konfiguracyjne służące rozpoznawaniu Konturów i Otworów Wierconych. Została wprowadzona nowa opcja, umożliwiająca usuwanie duplikatów konturów. Rozpoznawanie Cech Modelu na Płaszczyznach Ortogonalnych Kontury i otwory wiercone na wielu ortogonalnych płaszczyzn pracy można obecnie uzyskać w jednej operacji. Przy nowym układzie konfiguracji możliwe jest uzyskanie Konturów i/lub Otworów wierconych. Vero Software Limited www.alphacam.com 9 of 35
Ulepszenia do Rozpoznawania Cech Obrysu Konturów Algorytm generowania rozpoznawania cech obrysu konturów został ulepszony w celu otrzymywania bardziej spójnych i wiarygodnych wyników. Dokładność dla obrysu można teraz ustawić, jako Wysoką, Średnią lub Niską, domyślnie ustawiona jest Wysoka. Wsparcie API dla Spun Outlines jest teraz dostępne. Rendering Cech Sposób wyświetlania ekstrakcji cech został ulepszony, aby wyświetlić je w postaci renderowanej zamiast w postaci krawędzi. Ta funkcja ułatwia wizualizację cech oraz relacji zachodzących między nimi. Obraz przedstawia model bryłowy oraz renderowane cech Obraz przedstawia wyłącznie renderowane cech Vero Software Limited www.alphacam.com 10 of 35
Zaawansowana Obróbka 5 osiowa Nowy cykl obróbki zgrubnej 5-osiowej Nowy cykl obróbki zgrubnej wielo-osiowej tworzy ścieżkę narzędzia, które może być używane do obróbki zgrubnej kieszeni w kształcie zadanej geometrii. Z tego cyklu użytkownik określa powierzchnie dolną, boczną i górną, a system automatycznie tworzy ścieżkę narzędzia. Nowy cykl obróbki krawędzi Wirefreme Cykl obróbki krawędzi Wireframe tworzy ścieżkę narzędzia z wykorzystaniem krawędzi, przez prowadzenie krzywej wejściowej. Cykl funkcjonuje bez konieczności obróbki powierzchni. Wektory krzywej umożliwiają kontrolę orientacji narzędzia. Nowy cykl obróbki bokiem frezu Swarf Zaawansowany moduł obróbki 5-osiowej zawiera teraz dostęp do cyklu Obróbki bokiem frezu Swarf, który był typowo wykorzystywany do obróbki wykańczającej łopatek i wirników. Celem tego cyklu jest wytwarzanie wybranej powierzchni w jednym przejściu, stosując całą długość rowka narzędzia, zapewnia to następujące korzyści: - lepsza jakość wykończenia powierzchni (bez wykończenia ręcznego) - krótszy czas cyklu - pełny dostęp obszarów obróbki poprzez symultaniczną 5- osiową orientację wektora. - stałe warunki skrawania (zwiększona wydajność usuwania materiału, stała (niska) siła cięcia) Wybierz model bryłowy STL, jako Powierzchnie Kontrolne Modele STL można teraz wybierać, jako powierzchnie kontrolne, aby upewnić się, że ścieżka narzędzia nie zostanie oderwana Vero Software Limited www.alphacam.com 11 of 35
Symulacja Solid Odwzorowanie tekstury dla realistycznego wyglądu modelu Alphacam 2015 R2 wprowadza możliwość odwzorowania obrazu do stałego modelu w celu realistycznego renderowania w Symulacji Solid. Zainstalowano próbki tekstury drewna i kamienia, więcej tekstur może być dodanych przez samego użytkownika. Korzystanie z opcji Ustaw materiał, która znajduje się w zakładce 3D umożliwia przypisanie tekstury do stałego modelu. Vero Software Limited www.alphacam.com 12 of 35
Rozszerzenia w Nestingu Nowe Funkcje Specjalne w Nestingu Alphacam 2015 R2 posiada 3 nowe funkcje specjalne wykorzystywane w Nesting: - Użyj nazwy identyfikatorów. - Wyświetl nazwę części zamiast numeru. - Ignoruj ścieżki 3D w parametrach części. Vero Software Limited www.alphacam.com 13 of 35
Komenda Zgrubna/Wykańczająca Opcja Profil poprzedniego narzędzia Komenda Zgrubny/Wykańczający ma teraz możliwość korzystania profilu poprzedniego narzędzia, eliminując potrzebę stworzenia nowej geometrii. Wszystkie narzędzia do profili są obsługiwane, wliczając te określone przez użytkownika wraz oraz standardowe narzędzia kształtowe. Ponadto narzędzia te mogą być użyte ze wszystkimi Wybranymi lub Częściowymi Geometriami. Może to być stosowane do obróbki całego konturu lub obróbki resztkowej przy użyciu nowej opcji Uwzględnij wilskość poprzedniej obróbki. - Vero Software Limited www.alphacam.com 14 of 35
Translatory CAD Wsparcie Google Sketchup 2015 Obsługiwane są modele utworzone w Google Sketchup w wersji 2015 i starszych. Modele utworzone w Google Sketchup można teraz importować do AlphaCAM jako modele STL. Wczytywane są wszystkie elementy Google SketchUp z wyjątkiem tekstu i wymiarów. Szczegółowe informacje o możliwości wczytywania plików CAD w zależności od licencji AlphaCAM zawierają tabele Obsługiwane Wersje Plików CAD umieszczone w dalszej części tego dokumentu. Solid Edge ST7 Alphacam 2015 R2 obsługuje importowanie plików części Solid Edge ST7. Autodesk Inventor 2016 Alphacam 2015 R2obsługuje importowanie plików części Autodesk Inventor 2016. Vero Software Limited www.alphacam.com 15 of 35
Part Modeler Instalacja i lokalizacja dokumentów Aktualnie Alphacam Part Modeler jest instalowany w folderze C:\Program Files (x86)\vero Software\Part Modeler 2015 R2. Domyślna lokalizacja zapisywania dokumentów Part Modeler zmieniła się z: C:\Users \<user>\documents\planit\2015.20\part Modeler\cad to C:\Users\<user>\Documents\Vero Software\2015.20\Part Modeler\cad Na: C:\Users\<user>\Documents\Vero Software\2015.20\Part Modeler\cad Nowa opcja importowania plików IGES W wersji Alphacam2015 R2 dodany został alternatywny sposób importowania plików IGES do Part Modelera. Nowa opcja nazywa się SolidLink i zawiera opcje importowania, które wymienione zostały poniżej: - przenoszenie arkusza obiektów - opcje Healing - Off, Heal, uproszczenie i Heal Metoda "Standard (Pre 2015 R2)" jest opcją domyślną. Ulepszenia w Interfejsie Użytkownika Jakość miniatury podglądu podczas przeglądania plików Part Modelera w Windows Explorerze oraz pliki Otwierania/Zapisywania zostały ulepszone w celu ułatwienia rozróżnienia pomiędzy różnymi częściami. Dodano nową opcję o nazwie Zoom to Cursor, która włącza powiększanie modelu wokół aktualnej pozycji kursora. Ta opcja jest włączona na zakładce 'Ustawienia Interfejsu Użytkownika' w oknie dialogowym System (Narzędzia, opcję menu systemu). W celu obrotu aktywnego modelu wokół konkretnej osi należy przytrzymać klawisz klawiatury dla tej osi, czyli X,Y,Z. W celu obrotu aktywnego modelu o określonym punkcie, wciśnij prawy przycisk myszy jednocześnie trzymając wciśnięty klawisz CTRL oraz przeciągnij myszką. Vero Software Limited www.alphacam.com 16 of 35
Obsługiwane Wersje Plików CAD W zależności od poziomu i modułu, Alphacam importuje następujące wersje plików CAD: E = Essential S = Standard A = Advanced U = Ultimate Translator i Wersja Lathe Mill Wire Router Stone Profiling DXF/DWG (AutoCAD 2015) E S A U E S A U S A E S A U E S A U A U IGES (wersja nieokreślona) E S A U E S A U S A E S A U E S A U A U Rhino 5.0 S A U S A U S A S A U S A U A U STL (wersja nieokreślona) S A U S A U SA S A U S A U A U Google Sketchup 2015 S A U S A U SA S A U S A U A U Postscript (Darmowy dodatek) (wersja nieokreślona) - S A U S A S A U S A U A U STEP AP214/AP203 (preferowane Schematy) A U A U A A U A U U Part Modeler (obecna) A U A U A A U A U U VISI Version 20 A U A U A A U A U U Autodesk Inventor 2016 (obecna, pliki IPT & IAM ) A U A U A A U A U U ACIS R23 (Jądro) A U A U A A U A U U Parasolid 25.0.187 (Jądro) A U A U A A U A U U SOLIDWORKS 2015 ( tylko pliki SLDPRT ) A U A U A A U A U U Solid Edge ST7 ( pliki PAR & PSM ) A U A U A A U A U U Spaceclaim 2012+ A U A U A A U A U U Płatne Catia V4 A U A U A A U A U U Catia V5 R22 A U A U A A U A U U Creo Parametrics 2.0 (poprzednia nazwa Pro/E Wildfire) A U A U A A U A U U NX9 (poprzednia nazwa Unigraphics NX) A U A U A A U A U U W celu importowania plików Autodesk Inventor, Autodesk Inventor lub Inventor View musi być zainstalowany. Inventor View można pobrać ze strony Autodesk. Vero Software Limited www.alphacam.com 17 of 35
Ulepszenia API Ulepszenia API W wersji AlphaCam 2015 R2 dokonano następujących ulepszeń API: Obiekty Alphacam App Drawing DrawingOptions Element Frame MillData MillTool Spline Surface Surfaces TagData TurnData Metoda/Właściwości GetBitmapFromAlphacamFile ExpandOperations CollapseOperations UndoWithNoRedo CreateSurfaceCollection ShowRenderFeatureExtractedGeo ShowRenderGeoWithZLevel GetExtentXYG AddCommandToRibbonBar AddPopupMenuToRibbonBar AddCommandToQuickAccessToolbar AddPopupMenuToQuickAccessToolbar GetTagData SetTagData SetSolidGeometry SetHolderFromLibrary SetHolderSolidGeometry IsSame SetEmpty Add Remove TagType NumberOfTags ApproximateInterval CornerAngle MinimumElementLength MaximumElementLength MinimumArcRadius CentraliseToElements TagTopZ TagLength RampAngle FeedOutDistance Feature Objects SolidBody SolidExtraction2 Method / Property MakeSpunOutline String Orientation Source FindContours FindDrillHoles WorkPlaneActive FlatTop FlatBottom Vero Software Limited www.alphacam.com 18 of 35
SolidFace SolidFeatures WorkingTop WorkingBottom Displacement AddLevels OptimisePlanes Top Bottom MaxDrill Tolerance Step SetWorkPlane PartialAngle IncludePartialHoles OpenAirPocket RadialHolesAsCAxis RadialHolesTolerance LimitThroughHoles ConcentricZLevels ExtractContourOnWP ExtractDrillableHoleOnWP RemoveDuplicateContourOnWP RemoveDuplicateDrillableHoleOnWP FeatureExtractionMode MakeSurfaces AlignDatumX AlignDatumY AlignDatumZ SolidExtraction2 AutoExtract2 Nesting Objects NestList NestPart Method / Property UseNameIdentifiers SaveConfigAsDefault Ignore3DPaths W Załączniku A znajdują się przykładowe kody dla niektórych nowych komend API. Vero Software Limited www.alphacam.com 19 of 35
Zgłoszenia konserwacyjne To jest lista poprawek i ulepszeń wprowadzonych w Alphacam 2015 R2: ID Opis Notatka 82971 Add-ins - Edit Toolfiles - User defined tools do not Implemented export. 82727 Oscillation - Circles created at the machine. 82578 GUI - Mouse hover information is not translated for the Customise Quick Access Toolbar button. 82488 CAD to CAM - KAB-NX s - Incorrect depth of cut on pockets. 82389 Constraints - Parametric.txt - Cannot translate the word 'Default' in the Auto Constrain dialog. 82386 Nesting - Special Functions- Leave Edge Gap Uncut - For this selection to be remembered. 82302 Input CAD - STEP - Bad result. Missing faces. Incomplete model. 82157 Multidrill - Holes are being drilled incorrectly or not at all in. Related to imperial. 82096 Multidrill - 'This key is already associated with an element of this collection' For drilling to be applied to circles that have coincident centres when selection method is set to All Holes. 82087 Macro Recorder - Width, Length, Corner Rad and Write CDM Macro missing from interface. 82049 Auto Set Material Add-In - Support for simulation Texture 82033 Profiling - For Aspire to be available with the Profiling module. 81905 API - Operation in macro is not editable if macro is run from another macro 81869 GUI - Ribbon Bar - Hotkeys - Incorrect key prompt in Japanese system. 81672 Save This Tool - For the location not to default to the last place saved. 81644 Send To Simulator - 5-Axis Toopath Optimiser - The simulated tool paths are not at all reflecting the code. 81639 Send To Simulator - 5-Axis Toolpath Optimiser - TAX, TAY & TAZ and the optimised angles are not the same. 81621 Customise Ribbon - The addition of Ortho to the list of commands to add. 81590 Japanese Dimension text is not working correctly. Characters are not input. 81588 Insert - After inserting, saving and reopening the solids have gone. Implemented (32-bit only) Implemented Implemented Implemented Vero Software Limited www.alphacam.com 20 of 35
81586 5 Axis Toolpath Optimiser - Addition to Advanced module. 81584 Pocketing - Wrong depth of cut with some depth of cut values. 81490 Print - Bitmap pictures are displayed in preview but are not printed. 81445 Input CAD - IGES - 'Failed To Translate' if the file contains a solid and also has Japanese characters ion the file name. 81442 VBA - OnUpdateShow is called in an never ending loop. 81440 Rough or Finish - Apply Compensation on Rapid Approach or Retract (G41/G42 on tool centre) - Compensation is being applied and cancelled in the wrong/different place. G40 G41 G42. 81344 Machine Configuration - The addition of Move Part and Rotate Part to the Standard modules. 81261 Add-ins - 3D Digitise - 'Add-in not loaded' error when you turn it on. 81243 Input CAD - Catia (.catpart) - Error 'Failed to translate' if the file only contains vector geometries. 81151 Quick Access Toolbar - The addition of the a Separator option that is found in other software with the Ribbon. 81140 Drill/Machine Holes - Chamfering - Can not enter a negative Rapid Down To value. Added for some Operations It now uses a mechanism to reduce the number of times these calls are made Not implmented as solids not supported in Standard licenses Implemented No change, files contian geometry which is not supported Implemented 81131 Multi Drill (Legacy) - Holes being missed. 81111 Multidrill - Define Multi Drill Unit - Simulation - To support more tool number systems, ie starting at 100 or 200. 81044 CAD to CAM - Invalid Procedure Call or Argument while processing. 81034 Input CAD - STL / SKP - Possibility for the imported Face Contours to be geometries 80964 Lathe - Developed Side View - When picking lower geometry there are no axes. More tool numbers can be used, starting at 100 or 200 Polylines will be converted to geometries except those with Z levels. 80916 Lathe - Incorrect Facing toolpath on bottom turret. 80901 Z Contour Roughing - Wrong result when on work plane. 80867 Nesting - Nesting Engine Failed. 80812 Nesting - Small Part Zone - Incorrect result when the zone edge coincides with sheet edge. 80806 Nesting - Bad optimisation (related to No Nest Zone). Nest improved 80782 API - Method for expanding and collapsing operations. 80779 Drill/Machine Holes - Holes created on other geometries when a hole is removed from operation. Solution is to draw the zone extending over the sheet edge. Drawing.ExpandOperations and Drawing.CollapseOperations Vero Software Limited www.alphacam.com 21 of 35
80745 Stone - Advanced 5 Axis - No advanced 5 axis tool definition option. Implemented 80706 Alphacam Installation - Create a easy way to deploy ribbon configurations 80702 Advanced 5 Axis - To be able to select an STL as a Check surface. 80656 Input CAD - Solidedge (PAR) - Failed to translate ST7 files. 80597 Input CAD - Sketchup.skp - Can not load files created in Sketchup 2015. Implemented Implemented Solid Edge ST7 support Implemented Implemented 80488 Customise - To be able to export settings for Implemented keyboard shortcuts. 80449 Alphaedit - The addition of a Quick Access toolbar. Implemeted 80279 API - Addition of FeedOutDistance. New TurnData.FeedOutDistance 80194 Customise Ribbon - Grouped Commands have no icon when added to a custom Tab. 80158 Nesting - Re-Multidrill - Error, Object variable or width block variable not set. 80153 Hidden geometries are being included in selection for applying toolpaths. 80151 Nesting - Overlapping parts. 80089 API - Cannot Create A Machining Style With A Lead- In/Out Through VBA 79936 Solid Model Extract - Spun Outline Extraction - make spun outline crashes 79872 Shaded Simulation - Toolholder Transparency doesn't function as expected. 79824 Internal Solid Simulator - Toolholder Transparency doesn't function as expected. 79812 Nesting - Support for Parts with 3D Toolpaths not affecting the nest result. Implemented 79789 Nesting - Bad results related to 3D toolpaths. The part has a 3D toolpath which just gets treated by placing a rectangular boundary around its extents. 79788 GUI - Quick Access Toolbar - To be able to order the buttons. 79787 Convert Splines to Lines and Arcs - Some are not converted. 79784 Auto Z - Set Geometry Z levels - Bad result with Feature extracted Drillable Holes 79683 Rough or Finish - Comp on Rapids - Cut on inside with lead in/out in corner gives bad toolpath. 79602 External Simulator - Send to Simulator - Brings up error when large files are sent to sim. Implemented Works with a higher tolerance i.e. 0.0001. (requires installation of 64-bit Alphacam) Vero Software Limited www.alphacam.com 22 of 35
79461 3D Machining - Z Contour Roughing - Use Rejected Geometries as Boundaries instead of Material - Option for Material Top/Bottom values to be automaticaly taken from the Auto Z geometries. 79454 Nesting - Parts nested inside eachother. 79432 Simulation - Toolholder below saw/cutter is not detected as a collision. 79384 Pocketing - Use Z Contour Roughing - Waveform - Last pass does not respect the Z Stock. 79002 Lathe - Incorrect tool position simulation. 78937 GUI - Operations Manager - For optimised operations to be marked. 78435 API - The addition of Automatic Support Tags. New API method added 67274 Original Simulator - Saw - When the Maximum Depth of Cut is defined with the saw it effects the width of cut in the simulation 67219 Oscillation - Toolpath is Zig Zag when it is set to Sinusoidal. 66558 Lathe - Finish Pass - Extra Z values in NC. 65808 3D - Engraving -Slow Down For Corners can not be used. 65265 3D Surfaces - Surface of revolution - To be able to make a surface with a two element geometry. 64405 API - The addition of a method that would let the user undo through VBA without the redo becoming active in the GUI. 64205 Copy / Rotate / Mirror - Toolpaths and Geometries - To be given an option when copying for the new tool paths to keep their relation to the original. Opertion now marked with an Asterisk and ticks in Righ Click menu to show with modifiers are applied. New Drawing.UndoWithNoRedo() Implemented 63438 Lathe - Use Advanced Tooling Graphics - Bad simulation of user defined tool if extracted geometry is not on XZ Plane. 63300 Lathe - Copy and Move Operation - Using this function causes Alphacam to stop working. 62502 New Simulator - Stone - Wrong simulation when vertical cutting with disk. The head/disk pirouettes when changing direction. 61721 Solid Simulation - Machine position changes when starting simulation 60422 API - Lathe - Wrong Offset tool number if tool was created through API 50084 Insert Function - If you insert the same file more than once, it misses some toolpaths This option has been removed for Turning operations due to issues resolving it. Vero Software Limited www.alphacam.com 23 of 35
Wykaz najważniejszych funkcji poprzedniej wersji Alphacam 2015 R1 Spotkaliśmy się z bardzo pozytywnym odzewem na nowe funkcje Alphacam 2015 R1. Przypominamy najważniejsze z nich. Nowy Interfejs Użytkownika Zakładki Wstążki Pasek szybkiego dostępu Menedżer Projektu Okienko podglądu Eksploratora Windows Nowa funkcja Zaawansowanego Frezowania 5-osiowego Zaawansowane Cykle Obróbki 5-osiowej Biblioteka Oprawek Bibliotek Oprawek Obsługa Agregatów Symulacja wiercenia Multi Drill Agregaty Multi Drill Nowy Symulator Widok Porównania Translatory CAD Google Sketchup Autodesk 2015 DWG SOLIDWORKS 2015 Part Modeler Postępowanie płaszczyzna do płaszczyzny opcja 'Vertex Matching Offset' Ograniczenia możliwości ustawienia liczby miejsc po przecinku Wprowadzenie współrzędnych włączane poprzez klawisze klawiatury Ulepszenia API Vero Software Limited www.alphacam.com 24 of 35
Załącznik A Ulepszenia API w Alphacam 2015 R2 API TurnData FeedOutDistance Przykład: Public Sub Rough() 'App.New Dim Drw As Drawing Set Drw = App.ActiveDrawing Dim P1 As Path, P2 As Path Set P1 = CreateBilletGeo Set P2 = CreatePartGeo 'Drw.ZoomAll P2.ToolSide = acamright Dim Td As TurnData Set Td = App.CreateTurnData With Td.SetToolChangePoint 20, 50 Dim Tool As LatheTool Set Tool = App.SelectTool(App.LicomdatPath & "licomdat\ttools.alp\rough Outside.att") If Tool Is Nothing Then MsgBox "Unable to Select Tool" Exit Sub End If Tool.MaxSpindleSpeed = 2500 Tool.SpeedType = acamspeedsurface Tool.FeedType = acamfeedper_rev.roughtype = acamroughdiameter.billet = P1.AddPartSection P2, 0, 9, -55, 20.FaceStock = 0.2.DiameterStock = 0.1.DepthOfCut = 4.FeedInDistance = 0.1.FeedOutDistance = 0.125.BackOffDistancePerCut = 0.CleanProfileWithEachCut = True.RetractAmount = 0.1.LiftOff = acammovefeed.roughmethod = acamroughconventional.toolcanreenterprofile = True.Speed = 500 Vero Software Limited www.alphacam.com 25 of 35
.FeedZ = 0.2.FeedX = 0.5.Coolant = acamcoolflood.cannedcycle = False ' Set point to control roughing, allowing for material removed by Face operation.settoolsafepoint 1, 35 ' V8 Rapids.RapidApproach = acampostrapidapproachxz.rapidretract = acampostrapidretractzx '.RapidApproachSecurityZ = 20 '.RapidRetractSecurityZ = -99.RapidRetractSecurityX = 3.Rough.GotoToolChangePoint End With Drw.Options.ShowRapids = True Drw.ZoomAll End Sub Private Function CreatePartGeo() As Path Dim Drw As Drawing Set Drw = App.ActiveDrawing Dim G As Geo2D Set G = Drw.Create2DGeometry(-10, 0) G.AddLine -8, 5 G.AddLine 0, 5 G.AddLine 0, 10 G.AddLine -15, 10 ' start of groove G.AddLine -15, 7 G.AddLine -25, 7 G.AddLine -25, 10 ' end of groove G.AddLine -30, 10 G.AddArc2Point -35, 7, -40, 10 ' pocket G.AddLine -50, 20 G.AddLine -55, 20 ' G.AddLine -55, 0 ' G.AddLine -10, 0 ' close it Set CreatePartGeo = G.Finish ' Get the Element collection to do chamfer and fillet. ' The element numbers are not changed by the elements added by ' the chamfer and fillet, until the Elements property is read again. Dim Elems As Elements Set Elems = CreatePartGeo.Elements ' Chamfer the front end Elems(3).Chamfer Elems(4), False, True, 1, 1 ' Fillet the groove Elems(4).Fillet Elems(5), False, True, 0.5 Elems(5).Fillet Elems(6), False, True, 0.5 Elems(6).Fillet Elems(7), False, True, 0.5 Elems(7).Fillet Elems(8), False, True, 0.5 End Function Vero Software Limited www.alphacam.com 26 of 35
Private Function CreateBilletGeo() As Path Dim Drw As Drawing Set Drw = App.ActiveDrawing Dim G As Geo2D Set G = Drw.Create2DGeometry(10, 0) G.AddLine 10, 30 G.AddLine -55, 30 Set CreateBilletGeo = G.Finish CreateBilletGeo.Chamfer 4, 4 End Function API TagData Przykład: Option Explicit ' Try to select given Router tool. ' If not successful, ask the user to select a tool. ' Illustrates error handling. Private Sub GetRouterTool(Name As String) ' Name of tool, eg "Flat - 10mm", no folder or extension ' Enable error handling On Error Resume Next ' Try to select given tool App.SelectTool App.LicomdatPath & "LICOMDAT\RTOOLS.ALP\" & Name & ".ART" If Err.Number <> 0 Then ' Failed so ask user Err.Clear Dim F1 As String, F2 As String If Not App.GetAlphaCamFileName(Name & " not found: Select Tool", acamfiletypetool, acamfileactionopen, F1, F2) Then End End If ' Select chosen tool App.SelectTool F1 End If End Sub ' Draw a rectangle and create a finish path with tags Public Sub FinishPath() App.New Dim Drw As Drawing Set Drw = App.ActiveDrawing Drw.ScreenUpdating = False GetRouterTool "Flat - 10mm" ' Draw the geometry, set the tool side and select it Dim Geo As Path Set Geo = Drw.CreateRectangle(0, 0, 500, 400) Geo.SetStartPoint 50, 100 Geo.ToolInOut = acamoutside Geo.Selected = True Vero Software Limited www.alphacam.com 27 of 35
' Setup the machining data Dim MD As MillData Set MD = App.CreateMillData MD.XYCorners = acamcornersstraight MD.SafeRapidLevel = 20 MD.RapidDownTo = 1 MD.FinalDepth = -10 Dim Tags As TagData Set Tags = MD.GetTagData Tags.NumberOfTags = 10 Tags.TagLength = 35 Tags.TagTopZ = 2.5 Tags.TagType = acamtagramp MD.SetTagData Tags ' Create the tool path Dim Tps As Paths Set Tps = MD.RoughFinish Drw.ScreenUpdating = True Drw.ZoomAll End Sub ' Add tags to existing operation Public Sub AddTags() Dim SubOp As SubOperation Set SubOp = App.ActiveDrawing.Operations(1).SubOperations(1) Dim MD As MillData Set MD = SubOp.GetMillData Dim Tags As TagData Set Tags = MD.GetTagData Tags.NumberOfTags = 8 Tags.TagLength = 20 Tags.TagTopZ = 8 Tags.TagType = acamtagramp Tags.MinimumArcRadius = 60 Tags.CentraliseToElements = True MD.SetTagData Tags SubOp.SetMillData MD End Sub API MillTool SetSolidGeometry, SetHolderFromLibrary, SetHolderSolidGeometry Przykład: Attribute VB_Name = "Examples" Option Explicit ' "Pick Reference Point to attach to the top of the tool" Const ATTR_HOLDER_REF_PT1_X As String = "_LicomUKDMBHolderRefPt1X" Const ATTR_HOLDER_REF_PT1_Y As String = "_LicomUKDMBHolderRefPt1Y" Const ATTR_HOLDER_REF_PT1_Z As String = "_LicomUKDMBHolderRefPt1Z" ' "Pick Point for Machine Gauge Line" Vero Software Limited www.alphacam.com 28 of 35
Const ATTR_HOLDER_REF_PT2_X As String = "_LicomUKDMBHolderRefPt2X" Const ATTR_HOLDER_REF_PT2_Y As String = "_LicomUKDMBHolderRefPt2Y" Const ATTR_HOLDER_REF_PT2_Z As String = "_LicomUKDMBHolderRefPt2Z" ' Define a tool with user-defined geometry and a solid library holder Public Sub DefineUserDefinedTool() Dim Drw As Drawing Set Drw = App.ActiveDrawing Dim P2 As Geo2D Dim P3 As Path ' Define a user defined tool ' First define the profile Set P2 = Drw.Create2DGeometry(-15, 50) P2.AddLine -15, 20 P2.AddLine -2, 0 P2.AddLine 2, 0 P2.AddLine 15, 20 P2.AddLine 15, 50 Set P3 = P2.Finish ' Define and select the tool, the SetGeometry method takes ' the path object returned by the Finish method Dim Tool As MillTool Set Tool = App.CreateTool With Tool.Type = acamtooluser.name = "T85, user shape (API)".Number = 85.FeedPerTooth = 0.125.Units = 1.SetGeometry P3.SetHolderFromLibrary App.LicomdatPath & "LICOMDAT\Holders.alp\HSK Simple.atoolholder" End Sub If.UserConfirm Then.Select End If End With ' Define a flat-end tool with a solid representation Public Sub DefineSolidTool() Dim Tool As MillTool Set Tool = App.CreateTool With Tool ' Define the tool.type = acamtoolsquare.name = "T86, Flat with Solid (API)".Number = 86.Length = 55.Diameter = 10.FeedPerTooth = 0.1 ' Define the solid representation Dim DrwTemp As Drawing Vero Software Limited www.alphacam.com 29 of 35
Set DrwTemp = App.OpenTempDrawing(App.LicomdirPath & "LICOMDIR\solid geo tool only.amd") If DrwTemp Is Nothing Then Exit Sub End If.SetSolidGeometry DrwTemp If.UserConfirm Then.Select End If End With End Sub ' Define a ball-end tool with a solid holder Public Sub DefineToolWithSolidHolder() Dim Tool As MillTool Set Tool = App.CreateTool With Tool ' Define the tool.type = acamtoolball.name = "T87, Ball with Solid Holder (API)".Number = 87.Length = 55.Diameter = 10.FeedPerTooth = 0.1 ' Define the solid holder Dim DrwTemp As Drawing Set DrwTemp = App.OpenTempDrawing(App.LicomdirPath & "LICOMDIR\solid geo holder only.amd") If DrwTemp Is Nothing Then Exit Sub End If ' Set attributes to position the holder DrwTemp.Attribute(ATTR_HOLDER_REF_PT1_Z) = 40# DrwTemp.Attribute(ATTR_HOLDER_REF_PT2_Z) = 185#.SetHolderSolidGeometry DrwTemp If.UserConfirm Then.Select End If End With End Sub API - SolidFeatures AlignDatumX, AlignDatumY, AlignDatumZ Przykład: Ustaw Auto-ustawienie punktu odniesienia Dim SldFeature As SolidFeatures Dim SldExtract2 As SolidExtraction2 Set SldFeature = App.ActiveDrawing.SolidInterface Set SldExtract2 = SldFeature.SolidExtraction2 SldFeature.AlignDatumX = FeatureAlignMinExtent Vero Software Limited www.alphacam.com 30 of 35
SldFeature.AlignDatumY = FeatureAlignMidExtent SldFeature.AlignDatumZ = FeatureAlignMaxExtent SldFeature.Bodies.AutoAlign API - SolidFeatures SolidExtraction2, AutoExtract2 Przykład 1: Ekstrakcja Konturów na płaszczyźnie płaskiej oraz Otworów wierconych na płaszczyźnie pracy Dim SldFeature As SolidFeatures Dim SldExtract2 As SolidExtraction2 Set SldFeature = App.ActiveDrawing.SolidInterface Set SldExtract2 = SldFeature.SolidExtraction2 ' Find contours and drillable holes SldExtract2.FindContours = True SldExtract2.FindDrillHoles = True ' Set the feature extraction mode to contour SldExtract2.FeatureExtractionMode = FeatureExtractionModeContour With SldExtract2 ' FeatureExtractionMode was set to contour mode, ' Therefore, changes made to the following variables ' only apply to contour extraction.orientation = FeatureFlatLandOrientation2.Source = FeatureAllBodiesExtracted.Top = 0.Bottom = -100 End With SldExtract2.FeatureExtractionMode = FeatureExtractionModeDrillHole With SldExtract2 ' FeatureExtractionMode was set to drillable holes mode, ' Therefore, changes made to the following variables ' only apply to drillable hole extraction.orientation = FeatureAnyOrientation2.Source = FeatureAllBodiesExtracted End With SldFeature.AutoExtract2 SldExtract2 Przykład 2: Ekstrakcja konturów oraz otworów wierconych z wykorzystaniem opcji powierzchni Ortogonalnych Dim SldFeature As SolidFeatures Dim SldExtract2 As SolidExtraction2 Set SldFeature = App.ActiveDrawing.SolidInterface Set SldExtract2 = SldFeature.SolidExtraction2 ' Contour extraction setup SldExtract2.FeatureExtractionMode = FeatureExtractionModeContour With SldExtract2.Orientation = FeatureOrthogonalFaceOrientation2.OpenAirPocket = False.Tolerance = 0.001.MaxDrill = 1000.Source = FeatureAllBodiesExtracted Vero Software Limited www.alphacam.com 31 of 35
' Extract contour on Front, Back, Left and Top.ExtractContourOnWP = FeatureOrthogonalWorkPlaneFront Or _ FeatureOrthogonalWorkPlaneBack Or _ FeatureOrthogonalWorkPlaneLeft Or _ FeatureOrthogonalWorkPlaneTop ' Remove duplicates on the Back faces.removeduplicatecontouronwp = FeatureOrthogonalWorkPlaneBack End With ' Drillable Holes extraction setup SldExtract2.FeatureExtractionMode = FeatureExtractionModeDrillHole With SldExtract2.IncludePartialHoles = True.PartialAngle = 10.OptimisePlanes = True.Orientation = FeatureOrthogonalFaceOrientation2.Source = FeatureAllBodiesExtracted ' Extract drill hole on all work plane.extractdrillableholeonwp = FeatureOrthogonalWorkPlaneAll ' Remove duplicates on the back and right only..removeduplicatedrillableholeonwp = FeatureOrthogonalWorkPlaneBack Or _ FeatureOrthogonalWorkPlaneRight End With SldFeature.AutoExtract2 SldExtract2 Vero Software Limited www.alphacam.com 32 of 35
Załącznik B Makra 64 bit VBA Wprowadzenie Wraz z wprowadzeniem wersji 64-bitowej Alphacam, należało uaktualnić program Microsoft Visual Basic for Applications wersja 7.0 (VBA7). VBA 7 jest obecnie wykorzystywany w 32-bitowych oraz 64-bitowych aplikacji AlphaCAM i AlphaEdit. Wszystkie dodatki AlphaCAM zainstalowane w Alphacam 2015 R2 został zaktualizowane do pracy z Visual Basic 7.0, zarówno wersja programu AlphaCAM 32-bit i 64-bit (z wyjątkiem APM i CDM). Jeżeli tworzysz własne dodatki i chcesz, aby były kompatybilne z 64-bitową wersja programu AlphaCAM, powinieneś je wcześniej przetestować, ponieważ mogą wymagać modyfikacji. W szczególności, jeśli dodatek używa jakąś z funkcji API systemu Windows, będzie to wymagać pewnych aktualizacji przed uruchomieniem. Głównym powodem, dla którego kod VBA musi być aktualizowany jest wiele typów parametrów funkcji API systemu Windows (adresy są wskaźnikami lokalizacji pamięci), a te muszą być przechowywane, jako wartości 64-bitowe, gdy działa w środowisku 64-bitowym i 32-bitowe wartości w środowisku 32-bitowym. Wiele istniejącego kodu VBA 6 wykorzystuje wartości 32-bitowe do przechowywania wskaźników, które nie będą działać w środowisku 64-bitowym. W VBA 7, należy zaktualizować wszystkie Windows Application Programming Interface (API), sprawozdania (Oświadczenia instrukcji) do pracy w wersji 64-bitowej. Być może trzeba również zaktualizować definicje typów zdefiniowanych przez użytkownika, które są wykorzystywane przez te sprawozdania, jak również kod, który wywołuje te funkcje. Microsoft posiada do pobrania pliki, które zawierają deklaracje Windows API oraz stałe dla Visual Basic, które zostały zaktualizowane do wersji 64-bitowej pod adresem: http://www.microsoft.com/en-us/download/details.aspx?id=9970 Po pobraniu i zainstalowaniu plików, możesz skorzystać z pliku znajdującego się tutaj: "C: \ Office 2010 DeveloperResources \ Documents \ Office2010Win32API_PtrSafe \ Win32API_PtrSafe.TXT". Zawiera wiele przydatnych deklaracji, które można kopiować i wklejać. Inny pomocny artykuł znajduje się tutaj: https://msdn.microsoft.com/en-us/library/ee691831(office.14).aspx Ustalenie Deklaracji Pierwszą rzeczą, jaką można zrobić, to do aktualizacji oświadczenia zadeklarować słowem kluczowym PtrSafe. To podpowiada, VBA 7 które Twoim zdaniem wywoływanie funkcji jest bezpieczne w środowisku 64-bitowym (jednak nie oznacza to, że zawsze tak jest!) W istniejącym, VBA 6 makro może być oświadczenie, jak to... Private Declare Function GetUserDefaultLCID Lib"kernel32" () As Long Deklaruje, że chcemy użyć funkcji o nazwie GetUserDefaultLCID wewnątrz Kernel32.dll, że nie ma parametrów i zwraca Long. Funkcja ta nie korzysta z żadnych parametrów wskazujących, dzięki czemu może być łatwo uzupełniony o słowo kluczowe, PtrSafe... Private Declare PtrSafe Function GetUserDefaultLCID Lib "kernel32" () As Long Nie są wymagane żadne inne zmiany (chyba, że chcesz utworzyć własne makro z VBA 6 i VBA 7 - patrz dalej).). Ustalenie funkcji z typami wskaźników Poniżej znajduje się inny przykład z makra VBA 6.. Vero Software Limited www.alphacam.com 33 of 35
Private Declare Function RegOpenKeyEx Lib"advapi32.dll" Alias "RegOpenKeyExA" (ByVal hkey As Long,ByVal lpsubkey As String, ByVal uloptions As Long, ByVal samdesired As Long,phkResult As Long) As Long This function is used to open a registry key. Referring to the Win32API_PtrSafe.txt we can update this to the following... Private Declare PtrSafe Function RegOpenKeyEx Lib "advapi32.dll" Alias"RegOpenKeyExA" (ByVal hkey As LongPtr,ByVal lpsubkey As String, ByVal uloptions As Long, ByVal samdesired As Long,phkResult As LongPtr) As Long W tym przypadku, oprócz słów kluczowych PtrSafe, dwa parametry są wskaźnikami i trzeba zmienić typ z "Long" na "LongPtr". "LongPtr" jest specjalnym typem, który zostanie automatycznie zastąpiony typami wystarczająco dużymi, aby utrzymać wartość wskaźnika dla bieżącego środowiska wykonawczego. Innymi słowy, jeśli używasz 64bit AlphaCAM, A 'LongPtr "będzie wartości 64bit, jeśli używasz 32-bitowego AlphaCAM będzie to wartość 32bit. Kod, który korzysta z tej funkcji, musi być również zaktualizowany. W VBA 6 oryginalny kod tej funkcję to... Public Function gb_exportregkey(byval lkeyroot As KeyRoot,ByVal skeypath As String, ByVal sfilename As String) As Boolean Dim lnghkey As Long Dim lngret As Long lngret = RegOpenKeyEx(lKeyRoot, skeypath, 0&,KEY_ALL_ACCESS, lnghkey) Natomiast w VBA 7 powinien wyglądać tak.. Public Function gb_exportregkey(byval lkeyroot As KeyRoot,ByVal skeypath As String, ByVal sfilename As String) As Boolean Dim lnghkey As LongPtr Dim lngret As Long lngret = RegOpenKeyEx(lKeyRoot, skeypath, 0&,KEY_ALL_ACCESS, lnghkey) W tym przypadku, po prostu rodzaj HKEY zwracanej przez funkcję RegOpenKeyEx musi być aktualizowany z Long na LongPtr. VBA 6 Kompatybilność wsteczna Jak wspomniano powyżej jest jakaś dodatkowa praca do zrobienia, jeśli chcesz zachować wsteczną kompatybilność z VBA 6. W przypadku zainstalowania makro w folderze \ LicomDir \ VBMacros na przykład, może być stosowany przez Alphacam 2015R1 (lub starsze), a także Alphacam 2015 R2. Niestety nowe słowa kluczowe "PtrSafe" i "LongPtr" zostały wprowadzone w VBA 7 i VBA 6 nie wie, co one oznaczają. Aby umożliwić funkcjonowanie kodu VBA zarówno w wersji VBA 6 i VBA 7 jest niezbędne do skorzystania z testu Warunkowej Kompilacji dla VBA 7, jak poniżej: #If VBA7 Then Private Declare PtrSafe FunctionGetUserDefaultLCID Lib "kernel32" () As Long Private Declare PtrSafe FunctionRegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA"(ByVal hkey As LongPtr, ByVal lpsubkey As String, ByVal uloptions As Long,ByVal samdesired As Long, phkresult As LongPtr) As Long #Else Private Declare Function GetUserDefaultLCID Lib"kernel32" () As Long Private Declare Function RegOpenKeyEx Lib"advapi32.dll" Alias "RegOpenKeyExA" (ByVal hkey As Long,ByVal lpsubkey As String, ByVal uloptions As Long, ByVal samdesired As Long,phkResult As Long) As Long #EndIf Vero Software Limited www.alphacam.com 34 of 35
Konieczny jest również 'wrap' wszystkich wystąpień "LongPtr" w kodzie. W przypadku funkcji gb_exportregkey powinno dokonać się modyfikacji w następujący sposób: Public Function gb_exportregkey(byval lkeyroot As KeyRoot,ByVal skeypath As String, ByVal sfilename As String) As Boolean #If VBA7 Then Dim lnghkey As LongPtr #Else Dim lnghkey As Long #End If Dim lngret As Long lngret = RegOpenKeyEx(lKeyRoot, skeypath, 0&,KEY_ALL_ACCESS, lnghkey) Testowanie Makr Próby załadowania makra we Alphacam, które nie są kompatybilne z 64-bitowym VBA 7 spowoduje pojawienie się jednego lub kilku okien ostrzeżeń. Ostatnie z tych okien dialogowych zawiera podsumowanie wszystkich makr, których nie udało się skompilować. Można skopiować te dane do schowka i ewentualnie zdecydować się na wyłączenie tych makr. Możesz używać VBA Editor Debug Compile <Macro name> command, aby pomóc znaleźć kod i deklaracje, które muszą być aktualizowane. Elementy Aktywne X Jeśli korzystałeś z jednego z obiektów Active X Microsoft, aby dodać zaawansowane kontrolki interfejsu użytkownika do Makro VBA napotkasz niestety dodatkowe trudności. Microsoft nie wykonał 64-bitowych wersji tych składników (patrz https://msdn.microsoft.com/enus/library/office/ee691831(v=office.14).aspx#odc_office2010_compatibility32bit64bit_activexcontrolcomaddincompat ibility ) "Obejmuje to wspólne kontrole MSComCtl (TabStrip, Toolbar, StatusBar, ProgressBar, TreeView, ListViews, ImageList, Slider, ImageComboBox) i kontrole MSComCt2 Animation, UpDown, MonthView, DateTimePicker, FlatScrollBar)" Niestety nie ma wielu opcji... albo usunięcia składnika (i uproszczenie interfejsu) lub poszukiwania alternatywnego rozwiązania. Jeśli chodzi o alternatywy... niektóre z elementów VBA wewnątrz Xtreme Suite Pro składników ActiveX AlphaCAM, w wykorzystaniu koniecznie Codejock, które są dostępne w 32 i 64-bitowych. Jest to produkt komercyjny, więc związany z kosztami. Jeśli chcieliby Państwo uzyskać więcej informacji proszę skontaktować się z pomocą techniczną. Vero Software Limited www.alphacam.com 35 of 35