09-15-2018, 09:08 AM
(This post was last modified: 09-15-2018, 09:09 AM by Rick Johnson.)
I'm having trouble using the SDK's Pathfinder suite from within CORE, and wonder if I need to do some prep work such as somehow run sInterface->SetupMessageData first (where would I find pb->d.self?). For now, all I want to do is outline one path. Here's my code:
This code does nothing, and grouping the target art doesn't help. Without syncAndRedraw, my target path's appearance is removed. At least it doesn't generate an error! Any suggestions would be very much appreciated.
Code:
AIErr error;
AIPathfinderData data;
AIFilterMessage message;
message.filter = NULL;
message.parameters = NULL;
message.d = NULL;
// tempArt is an ArtAP, path style is set to desired width, caps, etc.
AIArtHandle tempArtH = tempArt->aiArtHandle();
data.fSelectedArt = &tempArtH;
data.fSelectedArtCount = 1;
data.options.flags = kSuppressProgressDialog | kIgnoreEvenOddFillRule ;
data.options.ipmPrecision = kDefaultPrecision;
data.options.removeRedundantPoints = kRemoveRedundantPointsDefault;
data.parameters.mixParameters.convertCustomColors = kMixConvertCustomColorsDefault;
data.parameters.mixParameters.softRate = kSoftRateDefault;
data.parameters.trapParameters.convertCustomColors = kTrapConvertCustomColorsDefault;
data.parameters.trapParameters.heightWidthAspectRatio = kHeightWidthAspectRatioDefault;
data.parameters.trapParameters.maximumTint = kMaximumTintDefault;
data.parameters.trapParameters.reverseTrap = kReverseTrapDefault;
data.parameters.trapParameters.tintTolerance = kTintToleranceDefault;
data.parameters.trapParameters.trapThickness = kTrapThicknessDefault;
data.parameters.trapParameters.trapTint = kTrapTintDefault;
data.fAlertInfoID = 0L;
error = sAIPathfinder->DoOutlineEffect(&data, &message);
if (error) goto error;
HDI_CORE_ILLUSTRATOR->currentDocument()->syncAndRedraw();
...
This code does nothing, and grouping the target art doesn't help. Without syncAndRedraw, my target path's appearance is removed. At least it doesn't generate an error! Any suggestions would be very much appreciated.