KVC simple path vs compound path

Hi
According to Apple's article about KVC http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueCoding/Concept s/BasicPrinciples.html paths for valueForKey can be compound. I mean consist from several property names separated by dot.
So if I want to get value of property of an object inside of one of it's accessors, than I can use [self.someproperty valueForKey:@"somevalue"]; or [self valueForKey:@"someproperty.somevalue"];
But second does not work! It says "this class is not key value coding-compliant for the key". So what is the problem with compound key path?

Totally different features.
A compound path is basically an object with a "hole" or "holes" in it. (Like an O or an 8)
A clipping path (which can also be a compound) is a mask. Parts of objects that lie outside the mask become invisible and unprintable.

Similar Messages

  • How to add simple path in exec command??

    Hello friends...want some help on "How to add simple path in exec command?"Because on linux each time username changes I will have to change username in exec command.Please help me.
    My code for java on linux is
    Runtime r4=Runtime.getRuntime();
                                       Process p4=null;
         //     "oofromtemplate" is command name for openoffice on linux                    //my username on linux is "sandy"     
                                       try
                                       p4=r4.exec("oofromtemplate /home/sandy/complete/Output.html");
                                       catch(Exception ae)
                                       System.out.println("error");
                                       }

    System properties yield among other things:
    user.name       User's account name
    user.home      User's home directory
    user.dir      User's current working directory

  • Simple Icon, Difficult Compound Path Issue

    Hey everyone,
    Need a little help here. Ive created this very simple icon:
    The airplane is a single object as is the runway. The two objects are grouped. There are a total of 9 compound paths that I see. The landing struts have 8 plus the 1 stripe in the middle of the runway. The problem I'm having appears only when I reduce the image down to around an inch. (Image is enlarged for better viewing)
    I'm assuming its the compound paths that make this happen but can't be 100% sure. Im completely baffled because Ive never experienced this with any other compound path and this is an extremely simple group of objects!
    My work around was to export as a hires png and then place it back in illustrator and trace as a sillohette. It solved the problem but this doesn't make any sense since when it was traced it still made the same compound paths. Right?
    Any input would be most appreciated.
    Thanks in advance.

    c,
    John has it. Just to elaborate a bit:
    You may select everything and then untick Align to Pixel Grid in the Transform palette, and also untick Align New Objects to Pixel Grid in the flyout options.
    You may avoid document types with that as default (RGB for web and the like) or change the default for such documents.

  • How to create simple path map??

    Hello,
    I have robot and I can control by labview, name of robot is Drjaguar and I want to move robot form one point to another point which are fixed.
    Initially thinking is there are no any obstacles in the path.
    Could any one Please guide me that how can I do so that my robot move form one point to another point when I run my vi.
    I am working in laboratory so I want to run my robot in that area.
    I have looked at the path planning vi (https://decibel.ni.com/content/docs/DOC-8983     and    http://zone.ni.com/reference/en-XX/help/372983C-01​/lvrobovi/path_planning_pal/) , but I  didn't get it means I understand logic of  that vi but how can I generate map for my laboratory and how can I mentions this is starting point and this is ending point.
    Please guide me.
    Thank you very much in advance for your time.

    Hi,
    as described in the documents (An introduction to A* Path Planning (using LabVIEW)) you can build a map of your room using an 2D array of non-zero values. How to do that is also shown in the attached VI of the document. Did you try that already? Or do you want a fancier view of the room?
    The VI also shows you how to define a starting and ending point. 
    I think the document provides all the information you are looking for.
    Regards, 
    Michael

  • Can't release compound path

    I drew some simple paths in Photoshop with the pen tool, then exported the paths to Illustrator. All the paths came into illustrator as compound paths, though they look like simple paths in illustrator. Because they are compound paths, I can't join the ends of the paths to the ends of other paths.
    Whe I select one of these paths:
    Object>Compound Path>Release is greyed out and unavailable.
    "Release Compound Shape" in the Pathfinde palette menu is also greyed out and unavailable.
    Is there any way to make these paths back into simple paths without redrawing them?
    I'm using CS6 versions of both Photoshop and Illustrator.

    Okay, here's the screen shot.

  • Making a clipping group with a compound path

    So, as of today I'm new to scripting for Illustrator, I'm using the ExtendScript Toolkit. However I'm not new to scripting my own solutions and I do have some experience with JavaScript already.
    What I'm trying to do is this: For all selected Items->Duplicate selected item and make a simple clipping group with it
    What I end up with visually doesn't change the picture, but gives me a lot of clipped colored areas which I then can edit in the isolated mode, allowing me far faster and better shading. Doing that by hand takes hours on some pictures, it'd take a second with a script.
    The script itself already perfectly works for normal PathItems. As obvious in the title, as soon as I have to apply the same to CompundPathItems things stop working. My issue is somewhat similar to this old thread [Problem with compound path clipping], but I couldn't find a solution there because I get different behavior.
    When I run the very same script that perfectly works with the normal PathItems with CompoundPathItems I get this: Error 9046: The top item in the group must be a path item to create a mask
    Well that's a problem. In the GUI there is absolutely no difference between making a clipping mask with a simple path and a compound path. The reference guide has frankly not helped me with this issue at all, the only thing I learned from that is that the CompoundPathItem object doesn't have a clipping attribute, but those included PathItems do.
    Here's what I have so far:
    if ( selected[i].typename == "PathItem" ) {
    var newGroup = doc.groupItems.add();
    copy = selected[i].duplicate(newGroup,ElementPlacement.PLACEATEND);
    selected[i].moveToBeginning(newGroup);
    newGroup.clipped = true;
    As I said, this part perfectly does what it's supposed to do for normal Paths.
    For CompoundPaths I use this workaround.
    if ( selected[i].typename == "CompoundPathItem" ) {
    var newGroup = doc.groupItems.add();
    copy = selected[i].duplicate(newGroup,ElementPlacement.PLACEATEND);
    selected[i].moveToBeginning(newGroup);
    compoundItems = selected[i].pathItems;
    compoundIndex = compoundItems.length;
    for ( f = 0; f < compoundIndex; f++ ) {compoundItems[f].clipping=true;}
    var lineList = new Array(10);
    for ( l = 0; l < lineList.length; l++ ) {lineList[l] = new Array( i * 10 + 50, ((i - 5) ^ 2) * 5 +50);}
    newPath = app.activeDocument.pathItems.add();
    newPath.setEntirePath(lineList);
    newPath.moveToBeginning(newGroup);
    newGroup.clipped = true;
    newPath.remove();
    Mind you, this workaround does work in so far that it bypasses that annoying and wrong error, and the Compound Clipping Path also works, with the only problem being that the Compound Clipping Path created like this is still displayed in its original colors in the Layers section, and is still selectable. When I lock the Compound Clipping Path I can work with it but still...
    So the question is, what am I missing here? Surely there must be a proper way to do this.

    app.executeMenuCommand()? That one eluded me so far, might be just the right thing. I'll definitely take a look, now just to find a ref on that, as unfortunately the official ref documents I have don't mention that command. Any place with a list of possible commands?
    Ah, also of course I'm not only doing it for the isolation mode. If you care to hear the background, here is it:
    As I said it's for shading the pictures I'm working on. I've iterated and tried through a bunch of techniques. For example gradient meshes on my first few real works. Now those meshes don't do well with complex shapes, which previously I alleviated by using a simple square or rectangle gradient mesh and using the original colored shape as a clipping mask. That did work, but it was a huge lot of work.
    After a bunch of attempts at that I went over to using simple gradients as a background for the shape and then I'm doing the shading freehand with the blob brush tool, using a graphic style and filters to make it look right. That's better, but properly making all the clipping masks takes me much longer than anything else.
    Now the problem is that the shading is not supposed to go over the lines, which is impossible to do properly without either messing up the order, or using clipping masks, hence the script. Because you know, if you use a blob brush with a strong Gaussian blur close to the lines you'll end up with stuff on both sides. If you don't start close to the line the shading won't look right if the darkest part of the shade needs to be close to the line. And that's where clipping masks do magic.
    And finally here's an example how I work with the script and the result:
    After I have traced a sketch, adjusted the line widths and everything to look neat I turn the paths to outline strokes and then make them into a live paint group (which would mess up the line widths, unless you turn the paths into outline strokes first).
    With that live paint group it takes me just a few minutes to flat color my piece. Then I expand the live paint group, in case of doubt spend some more minutes to make compound paths from all areas I need to shade in one piece, then I select all the areas and use my script to turn them into neat clipping masks. Then I can click any area, enter the isolation mode and go up one level so I'm in the appropriate group, where I can shade freely without the problem of going over the lines.
    At the end that allows me to apply a complex and in-depth shading, without wasting any time to get there.
    PS: Well, I just found out that Draw Inside is pretty darn close to what I want to do, and oddly enough it produces the same visual discrepancy with compound paths that my script produces. I'll be taking a closer look at that, though my script does a little more than just the clipping mask stuff, so maybe I'll go for a hybrid solution. Whatever makes for a better workflow.

  • Reverse path direction in Illustrator CS5

    I have started to use Illustrator CS5 for outline drawing this year. I purchased the license time ago, but I always preferred to use FreeHand for outline drawing (I design lettering and typefaces).
    Now that FreeHand is unfortunately become a bit too obsolete for the new operating systems architectures, I have familiarized myself with Illustrator and was going decently, but I have been unable to find a solution to this problem yet:
    Whenever I need to reverse the direction of a path (for various reasons), I can’t seem to find a way to do so, unless of course it’s a composed path (from two closed paths). I need to perform this operation. At work, I use InDesign CS6 and I have seen Adobe has introduced it in its palette, but I can’t find it in Illustrator CS5 or CS6.
    Many thanks in advance to all those who could help me…

    You can temporarily make the simple path into a Compound Path (same thing as a FreeHand Composite Path) and then the reverse direction buttons in the Attributes palette will work. But like most everything in Illustrator, it's needlessly cumbersome:
    Select the single path (Object>Compound Path>Make).
    Select a portion of it with the white pointer. (Deselect, then click a segment or an anchor; don't altClick it to select the whole path, because Illustrator doesn't know the difference between a path's being selected as an object, as opposed to merely having all its anchors selected.)
    Click the Reverse Direction button in the Attributes palette.
    Deselect. Then select the whole path (sigh).
    Object>Compound Path>Release.
    Ridiculous, isn't it?
    The scripting object model provides for a path direction setting (polarity), but interface doesn't provide access to it on normal paths. This simple script will reverse the polarity of currently selected paths:
    //Begin Script
    for(i=0;i<activeDocument.selection.length;i++){
    if(selection[i].polarity==PolarityValues.POSITIVE){
      selection[i].polarity=PolarityValues.NEGATIVE;
    }else{
      selection[i].polarity=PolarityValues.POSITIVE;
    //EndScript
    Of course, while drawing glyphs, you'll soon run into the lack of other FreeHand no-nonsense features, such as extend/retract individual handles. And there's nothing you can do about the lack of Connector Points which ensure tangency between straight and curved segments.
    What font program are you using? FreeHand's progenitor, Fontographer, from which its path drawing interface was derived (and which pre-dated Illustrator), is now owned and sold by FontLab. I would (and do) use that.
    JET

  • How can I cut out paths with another path and just leave short paths (pic examples inside)

    Ok, so we start with this... the "S" is a path (the "S" is just used for example here but could be a star, a heart or even something more complex.
    Then I need to end up with this:
    This was done with clipping mask but that only gives me the "look" I want, not the end results I want.
    I need EACH of those lines to be an independant path that can be manipulated individually later.  So like the 4th row from the bottom would be two separate paths.
    Does this make sense?
    What is the best way to achieve this?

    JustyCase,
    With the horizontal paths on top, you may:
    1) Select all the horizontal paths, Object>Path>Outline Stroke (if they are not outlined to closed paths already), and Object>Compound Path>Make,
    2) Also select the shape to cut up and Pathfinder>Minus Front (hold Alt/Option if needed to make simple paths).
    This should leave you with a Group of simple paths as desired, with no trash.
    Edit:
    Busy with some urgent matters all day, I thought I had reloaded the thread before posting. I never saw posts # 9, 10, 11, 12, 13, 14, & 15, until now. Argh.

  • Help! Changing attachment path in SQL database

    Changing paths in the dbo.dlnk table isn't too difficult, but I came accross something that has me stumped.
    Rather than a straight forward path such as \\servername\documents\ there are many that have a URL in the path such as http://servername/exponline/attachmentframe.jsp?filename=83089.pdf&fullpath=%5C%5Cservername%5Cimagetool%5Carchive%5Chce%5C78%5C83089.pdf&dk=h8Tjf4FcM7Km%2BpwH637w6w%3D%3D
    Does anyone have a sql script that will filter out the url crud and leave a simple path.
    You can see the path in there, it's \\servername\imagetool\archive\hce\78\5C83089.pdf

    SELECT SUBSTRING(REPLACE(SUBSTRING(@path,
    PATINDEX('%fullpath=%', @path) + 9,
    255), '%5c', '\'), 1,
    PATINDEX('%&dk=%',
    REPLACE(SUBSTRING(@path,
    PATINDEX('%fullpath=%',
    @path) + 9, 255),
    '%5c', '\')) - 1) AS [absolute_path]
    ,[description]
    ,[master_key]
    ,[parent_key]
    ,[cr_external_key]
    INTO #temp
    FROM ATTACHMENT_PATHS
    UPDATE attachment_paths
    SET ATTACHMENT_PATHS.absolute_path = #temp.absolute_path
    FROM ATTACHMENT_PATHS
    INNER JOIN #temp ON ATTACHMENT_PATHS.master_key = #temp.master_key
    WHERE ATTACHMENT_PATHS.absolute_path LIKE '%/exponloine/%'

  • SharePoint 2010, Visual Studio 2010, Packaging a solution - The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.

    Hi,
    I have a solution that used to contain one SharePoint 2010 project. The project is named along the following lines:
    <Company>.<Product>.SharePoint - let's call it Project1 for future reference. It contains a number of features which have been named according
    to their purpose, some are reasonably long and the paths fairly deep. As far as I am concerned we are using sensible namespaces and these reflect our company policy of "doing things properly".
    I first encountered the following error message when packaging the aforementioned SharePoint project into a wsp:
    "The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters."
    I went through a great deal of pain in trying to rename the project, shorten feature names and namespaces etc... until I got it working. I then went about gradually
    renaming everything until eventually I had what I started with, and it all worked. So I was none the wiser...not ideal, but I needed to get on and had tight delivery timelines.
    Recently we wanted to add another SharePoint project so that we could move some of our core functinality out into a separate SharePoint solution - e.g. custom workflow
    error logging. So we created another project in Visual Studio called:
    <Company>.<Product>.SharePoint.<Subsystem> - let's call it Project2 for future reference
    And this is when the error has come back and bitten me! The scenario is now as follows:
    1. project1 packages and deploys successfully with long feature names and deep paths.
    2. project2 does not package and has no features in it at all. The project2 name is 13 characters longer than project1
    I am convinced this is a bug with Visual Studio and/or the Package MSBuild target. Why? Let me explain my findings so far:
    1. By doing the following I can get project2 to package
    In Visual Studio 2010 show all files of project2, delete the obj, bin, pkg, pkgobj folders.
    Clean the solution
    Shut down Visual Studio 2010
    Open Visual Studio 2010
    Rebuild the solution
    Package the project2
    et voila the package is generated!
    This demonstrates that the package error message is in fact inaccurate and that it can create the package, it just needs a little help, since Visual Studio seems to
    no longer be hanging onto something.
    Clearly this is fine for a small time project, but try doing this in an environment where we use Continuous Integration, Unit Testing and automatic deployment of SharePoint
    solutions on a Build Server using automated builds.
    2. I have created another project3 which has a ludicrously long name, this packages fine and also has no features contained within it.
    3. I have looked at the length of the path under the pkg folder for project1 and it is large in comparison to the one that is generated for project2, that is when it
    does successfully package using the method outlined in 1. above. This is strange since project1 packages and project2 does not.
    4. If I attempt to add project2 to my command line build using MSBuild then it fails to package and when I then open up Visual Studio and attempt to package project2
    from the Visual Studio UI then it fails with the path too long error message, until I go through the steps outlined in 1. above to get it to package.
    5. DebugView shows nothing useful during the build and packaging of the project.
    6. The error seems to occur in
    CreateSharePointProjectService target called at line 365 of
    Microsoft.VisualStudio.SharePoint.targetsCurrently I am at a loss to work out why this is happening? My next task is to delete
    project2 completely and recreate it and introduce it into my Visual Studio solution.
    Microsoft, can you confirm whether this is a known issue and whether others have encountered this issue? Is it resolved in a hotfix?
    Anybody else, can you confirm whether you have come up with a solution to this issue? When I mean a solution I mean one that does not mean that I have to rename my namespaces,
    project etc... and is actually workable in a meaningful Visual Studio solution.

    Hi
    Yes, I thought I had fixed this my moving my solution from the usual documents  to
    c:\v2010\projectsOverflow\DetailedProjectTimeline
    This builds ok, but when I come to package I get the lovely error:
    Error 2 The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. C:\VS2010\ProjectsOverflow\DetailedProjectTimeline\VisualDetailedProjectTimelineWebPart\Features\Feature1\Feature1.feature VisualDetailedProjectTimeline
    Now, the error seems to be related to 
    Can anyone suggest what might be causing this. Probably some path in an XML file somewhere. Here is my prime suspect!
    <metaData>
    <type name="VisualDetailedProjectTimelineWebPart.VisualProjectTimelineWebPart.VisualProjectTimeline, $SharePoint.Project.AssemblyFullName$" />
    <importErrorMessage>$Resources:core,ImportErrorMessage;</importErrorMessage>
    </metaData>
    <data>
    <properties>
    <property name="Title" type="string">VisualProjectTimelineWebPart</property>
    <property name="Description" type="string">My Visual WebPart</property>
    </properties>
    </data>
    </webPart>
    </webParts>
    .... Unless I can solve this I will have to remove the project and recreate but with simple paths. Tho I will be none the wiser if I come across this again.
    Daniel

  • Could not complete the new 3D extrusion from selected layer command because the path is too complex.

    I was trying to do a photo of mine like in this video but its not working help needed. thanks.
    http://www.youtube.com/watch?v=egyLY78H7nE
    When I tried the 3D I got an error message that said (could not complete the new 3D extrusion from selected layer command because the path is too complex.) what does this mean and how can i fix it?

    There was a bug at one time where really simple paths (like a triangle, for example) could cause that error.
    Is your path really simple (I don't plan to go watch the video)?  If so, have you installed the latest update for Photoshop?  That bug may have been fixed already.
    If it's not that, it's possible that if your path is really complex and simply exceeding Photoshop's capability.
    -Noel

  • Finding the length of a path

    hey,
    i'm using cs3 and i have a few simple paths (curves) and i'd like to know the length of these curves but i can't seem to find an option, or whatever, for that.
    thanks

    You mean the length as you travel along the curves?
    Can't be done I'm afraid, at least not very accurately.
    If it's really important you could try arranging a whole lot of little squares along the path so that they touch each other and then counting them. But the result won't be accurate unless the squares are very small.
    However, if you know how the curves are constructed geometrically you can sometimes calculate their lengths.
    For example if the curve is an arc of a circle and you know the angle it subtends as a proportion of 360 degrees then it's fairly easy to use pi to find the length of it.
    Circumference of a circle = pi x diameter.
    "As every skoolboy kno" (nigel molesworth)
    Ellipses are more of a bother and I don't know the formulas for sinus curves, parabolas and that sort of thing.

  • How can I progressively display a Path using animation?

    I have a defined simple path that I want to display incrementally.
    In the example below I initialize two PathElement[] variables e0 and e1 representing initial and final states of the elements of the path.
    A Path is defined with elements bound to e.
    In the Timeline I attempt to interpolate e0 and e1 for the bound variable e.
    But it fails to compile/run.
    How can I interpolate elements of a path?
    import javafx.animation.Interpolator;
    import javafx.animation.KeyFrame;
    import javafx.animation.Timeline;
    import javafx.scene.Scene;
    import javafx.scene.shape.LineTo;
    import javafx.scene.shape.MoveTo;
    import javafx.scene.shape.Path;
    import javafx.scene.shape.PathElement;
    import javafx.stage.Stage;
    var e : PathElement[] = [];
    var e0 : PathElement[] = []; // initial state
    var e1 : PathElement[] = [   // final state
         MoveTo {
              x: 0
              y: 0
         LineTo {
              x: 100
              y: 100
    var path = Path {
         fill: null
         strokeWidth: 1
         elements: bind e
    Stage {
         title: "problem"
         scene: Scene {
              width: 100
              height: 100
              content: path
    var t = Timeline {
         keyFrames: [
              KeyFrame {
                   time: 0s
                   values: e => e0
              KeyFrame {
                   time: 6s
                   values: e => e1  tween Interpolator.LINEAR
    t.play();

    You can use Internet Explorer as an ActiveX object, then load local PDF files or retrieve the PDF from a site via http.
     An example is located here:
     http://forums.lavag.org/Embedded-Web-Browser-IE-Only-t5402.html&pid=21578&mode=threaded#entry21578
    Message Edited by Phillip Brooks on 08-24-2007 01:39 PM
    Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
    If you don't hate time zones, you're not a real programmer.
    "You are what you don't automate"
    Inplaceness is synonymous with insidiousness

  • How to properly create path art object, please help

    Hello there,
    I have a vector of AIRealPoint , each point is actual X, Y coordinate of the stroke. I need to create path art object out of this vector.
    I'm  somehow confused how to correctly construct segments array form the given AIRealPoints, my goal is to have single path object where count of segments is equal to count of AIrealPoints first and last points are anchors. SDK documenation is not really helping here...
    Please, take a look at the code snippet, it seems I'm doing something wrong with in and out params of segment , in any case I fail to create simple path object ....
    ASErr CretaeVectorPathTest2(vector<AIRealPoint>& stroke)
    AIArtHandle artHandle;
    ASErr result = kNoErr;
    try {
      AIRealPoint start;
      long lngStrokeLength = stroke.size()-1;
      AIArtHandle lineHandle = NULL;
      AIErr error = sAIArt->NewArt( kPathArt, kPlaceAboveAll, NULL, &lineHandle );
      if ( error ) throw( error );
      error = sAIPath->SetPathSegmentCount( lineHandle, lngStrokeLength );
      if ( error ) throw( error );
      AIPathSegment *segment = new AIPathSegment[lngStrokeLength];
      // This is a first point of the path
      segment[0].p.h = stroke[0].h;
      segment[0].p.v = stroke[0].v;
      segment[0].in = segment[0].out = segment[0].p;
      segment[0].corner = true;
      for(inti=1 ;i< lngStrokeLength-1;i++)
       segment[i].p.h = stroke[i].h ;
       segment[i].p.v = stroke[i].h ;
       // NOT GOOD!!!
       segment[i].in.h  = stroke[i-1].h ;
       segment[i].in.v  = stroke[i-1].v ;
       segment[i].out.h  = stroke[i+1].h;
       segment[i].out.v  = stroke[i+1].v;
       segment[i].corner = false;
    // NOT GOOD!!!
      // This is a last point of the path
      segment[lngStrokeLength].p.h = stroke[lngStrokeLength].h;
      segment[lngStrokeLength].p.v = stroke[lngStrokeLength].v;
      segment[lngStrokeLength].in = segment[lngStrokeLength].out = segment[lngStrokeLength].p;
      segment[lngStrokeLength].corner = true;
      error = sAIPath->SetPathSegments( lineHandle, 0, lngStrokeLength, segment );
      if ( error ) throw( error );
      error = sAIPath->SetPathClosed( lineHandle, false );
      if ( error ) throw( error );
    // apply color width etc.
      AIPathStyle style;
      error = sAIPathStyle->GetPathStyle( lineHandle, &style );
      if ( error ) throw( error );
      style.strokePaint = true;
      style.stroke.color.kind = kFourColor;
      style.stroke.color.c.f.cyan = 0;
      style.stroke.color.c.f.magenta = 0;
      style.stroke.color.c.f.yellow = 0;
      style.stroke.color.c.f.black = 100;
      style.stroke.width = 0.75;
      style.stroke.dash.length = 0;
      delete[] segment;
      error = sAIPathStyle->SetPathStyle( lineHandle, &style );
      if ( error ) throw( error );
    catch (ai::Error& ex) {
      result = ex;
    return result;
    Thanks,
    David

    As for beziers, Illustrator uses cubic beziers which are fairly straight forward (thank goodness!). Here's a lift from Wikipedia's Bezier entry:
    This image is pretty good at demonstrating how AI's bezier segments work. In the animation, the moving point has two lines sticking off it, ending with two points. If P3 was an AISegment, the left-hand blue point would be in and the right-hand point would be out. If we were to translate the state of the animation in its last frame into AI code, you'd basically have something like this:
    AISegment segment1, segment2;
    segment1.p = p0;
    segment1.in = p0;
    segment1.out = p1;
    segment2.in = p2;
    segment2.p = p3;
    segment.out = p3;
    Note that this would imply any line that continues beyond either end point isn't a smooth beizer curve (i.e. the curve is limited to between these points). That effectively makes them corner points (I think). Also, the line formed by linking in & p or out & p is the tangent to the curve at p, which I think you can make out from from the animation.
    Another way to get a feel for this is to use the pen tool to draw a line with a few segments. If you then pick the sub-select tool (white selection arrow, not black selection arrow) and select individual points on the curve, you'll see when you do that two 'anchors' jut out from each point. Those are the in & out for that point on the curve.
    Its all a little confusing because technically, a bezier segment between p & q would be p, p.out, q.in & q. (four vertices). To avoid repeating information, and keep it simple for non-beziers, AI's segments are still the vertices. So if you wanted to make the nth segment a beizer, you'd need n & n+1 from AI's path, and you'd modify two-thirds of each AISegment (p, out from n & in, p from n+1).
    I hope that helps, but if you have any further questions, feel free to ask! If you need to do anything fancy with beziers, there are some helpful utilites in AIRealBezier.h.

  • Fixing CAD Program Paths

    I'm often asked to edit drawings that were created in engineering CAD programs. I keep running into the same problem where Illustrator can't fill a closed path completely, and I can't find a workaround yet for this.
    Let's say I have a closed path of a basic shape, with rounded corners. (Well, I assume it's a closed path. It sure looks like it to me.) If I select this shape and fill with black, only the corners are filled black. The rest of the shape remains white.
    I'm looking for a command in Illustrator CS3 that will correct this path, so the shape will fill entirely with black.
    Can anyone comment on this, or offer a fix?
    I've asked the engineering guys to look into their Export or Save As settings on their end, but there doesn't seem to be anything. I have been receiving .AI files and also AutoCAD .DXF format files, if this is of any help. I also understand some of these files are drawn in SoftWorks.
    Thanks in advance for any potential help in fixing these simple paths.

    i've had to bring lots of cad files into illustrator and that's always a drag and non of the solutions are quick.
    you can use the plug in Concatenate to join segmented paths - this will require you to do one object at a time for clean results. you can do a whole document but you might end up with multiple merged objects etc. it's also not always clean, depending on your object you might end up with multiple lines on top of each other. but in general it helps a lot.
    one helpful thing to do before using it is to get rid of anchor points before joining.
    another way i've been working around this is by using the Live Paint. select the lines enclosing the shape you need and paint fill it.

Maybe you are looking for

  • Primary Key rule Violation error while Insert Record in Compact DB

    Hi All, I have One Table in Server Name "Student"  when i Synchronize this with the help of Microsoft Synchronization Framework same Table schema with Data has been create in CompactDataBase. When i insert data in CompactDataDase it give me Primary K

  • Laptop to tv connection

    HELP!  What do I need to connect my laptop to my tv in order to watch movies and stream videos on my tv?  It's Christmas present and I need help asap please.

  • Create Symbol=Lose Events

    IE-Grouping elements into a symbol causes loss of events. Not sure if this is a bug but has anyone else noticed this? The workaround I've found is to to group the elements into a div, but then obviously... You can try yourself with the lynda tut / ch

  • Change of E-mail-help

    hello forum, i am not sure this is the right forum, does anybody knows how to edit one profile and change the E-mail Address ? my profile contains a very old e-mail address that I want to change,I have tried everything I know without any chnace. Rega

  • FTP, adding documents

    I have a site set up (Manage Sites) through FTP. I want to add in documents from my harddrive to the website, but I don't know how, I guess. I dragged the file from my disc to the website (in the Files list) and it didn't show up, even though I refre