It is possible to create new pin mapping through automation, there are examples in the documentation.
You probably will not be able to modify an existing pin mapping, there is no way to delete a symbol or cell reference.
The only way to modify the existing pin mapping would be to build a copy of the part with appropriate modifications, then delete the old part.
For reading the mapping between logical pin name and physical pin number, this simple loop will print the logical to physical mapping for every part in a library:sLmcPath = "C:\MentorGraphics\7.9EE\SDD_HOME\standard\examples\SampleLib2007\SampleLib.lmc"Set pdbEd = CreateObject("MGCPCBLibraries.PartsEditorDlg")Set pdbDB = pdbEd.OpenDatabaseEx(sLmcPath, True)For Each pdbPartition In pdbDB.PartitionsFor Each pdbPart In pdbPartition.PartsWScript.Echo pdbPartition.Name & ":" & pdbPart.NameSet pdbMapping = pdbPart.PinMappingFor Each objSlot In pdbMapping.SlotsFor Each objPinInstance In objSlot.PinssPinName = objPinInstance.Name
If sPinName = "" Then
sPinName = objSlot.Gate.Name
End IfWScript.Echo " " & sPinName & " => " & objPinInstance.NumberNextNextNextNextpdbEd.CloseActiveDatabase FalseSet pdbDB = NothingSet pdbEd = NothingJohn