Coming from a plain Autocad background in manufacturing and engineering I view every item in model space as something that can be manipulated at will and saved for future use. Having started to use Map 3d in the last year I have been constantly frustrated by not being able to directly manipulate Shapefiles and save the results.
I am now starting to think about Shapefiles as more of an output akin to a plot. If I need to make a change to a plot I go back to the original drawing file, make the changes, and plot again as opposed to getting out some white out and making the correction on the plot itself. In this same vein it seems that instead of attempting to make changes to Shapefiles in Map I need to go back to the underlying data, make the changes there, and regenerate the Shapefile.
Am I on the right track here or am I missing some basic editing capabilities for Shapefiles?
In the context of your question, what is your definition of a "shapefile"?
If you drag+drop an ESRI shapefile (the .shp file of the combination of .shx, .shp, .prj, .idx, .dbf, etc. files) into AutoCAD MAP, the resulting objects are of entity type "MAPBULKFEATURE".
If you run the MapImport command, those objects are imported as POLYLINE and/or MPOLYGON objects.
Have you seen this?
For my application I am connecting to shapefiles by using the Data Connect feature in the Display Manager.
Thank you for that link. Yes I have seen that and followed the tutorials for learning various aspects of Map. In editing polylines in a shapefile last week I continually received errors that the changes can't be saved.
I've had similar problems with polygons.
If you want to manipulate a shapefile like plain vanilla, use MAPIMPORT command. This command will do two things:
If you know how, you can also harvest or pull out the data from the shapefile's database during MapImport. Harvesting the data will create AutoCad Object Data (OD) and will give you capabilities beyond vanilla Acad, e.g. perform queries.
FYI, Shapefiles cannot be treated as plain vanilla AutoCad entities. Sure you can edit them, for example, you can delete, add or reshape the geometry but only if you know how. It's easy for an AutoCad user to consider a shapefile to be just another drawing format when it's not. Shapefiles are not just geometry such as points, lines or polygons, they're points lines and polygons with data 'attached' to them.
To give an analogy, consider mobile phones. Back in the day, mobile phones were used for pure communication or talk & text phones. (Remember ya' had to press the '3' key 3X to get the letter F?) Now, you can get driving directions, perform banking transactions and order food. Old phones were dumb while new phones are smart.
You can consider a shapefile to be smart while plain vanilla line work to be dumb. Sure you can manipulate, if you know how, a shapefile and make it behave like dumb vanilla Acad but doing so takes the smart data right out of it. It's like buying a smart phone for purposes of talking/texting and ignoring all the built in smart features like apps and internet connections.
Shapefiles serve a completely different purpose and are typically used by a completely different user. Just like phone users, the typical shapefile user is one who not only wants data but knows how and is capable of using such data. The smart phone user would like to go beyond talking and texting while the shapefile user would like to go beyond drawing and get into data analysis.
And to be clear, MapImport doesn't harm or modify the original shapefile. The command merely makes a copy of the shapefile and converts the copy to AutoCad entities. The shapefile itself remains as-is.
Chicagolooper
Please don't misunderstand me, I value the "Smart" aspects of shapefiles and create and share them on a regular basis so that end users can have access to the data attached. My particular situation that lead to this post is as follows:
I needed to create a buffer around buried utilities for an upload to the Georgia 811 which is a call before you dig entity that helps prevent underground utilities from being accidentally damaged. In order to use the Feature Buffer I had to convert my polylines into Map Features. I chose to use a shapefile for this operation. Once this was connected to the map, I was able to create the buffers. Upon review of the buffers it was determined that there were a number of areas where the underlying lines needed to be modified. Instead of reverting to the original polylines I instead edited the lines in the shapefile. This worked fine for regenerating the buffers and I thought all was well. Due to the fact that the changes were not being saved to the connected shapefile, the edits were lost even though I saved the drawing file.
So I now find myself having to redo the edits that I performed on the shapefile in the original drawing that contained the polylines. I fully understand that this is the fault of my own lack of in depth understanding of just what a shapefile is and isn't, hence my likening it to output in the same sense as a plot, although a very smart plot, instead of a set on lines and other geometry to be manipulated.
Maybe I'm not understanding your situation, but instead of creating a buffer around 'your' features (your line work), create a buffer (or an offset) for the no-construction zone of the existing features. This way when you draw your features you can comply with the no-construction buffer area by positioning your line work near the buffer and not in it. Am I understanding the situation clearly?
Once your line work is drawn, you can easily export your features as shapefile. The way your explanation written you are doing it backwards.
Put a buffer ( use the OFFSET command in AutoCAD) around existing features you must avoid then make your line work snake around that offset area. Once your lines are drawn correctly, you can create a shapefile of your line work.
Chicagolooper
after editing a FDO file run the command MAPCHECKINALL which writes the edits to the FDO file as in saves the changes.
The utilities are already in the ground, I need to upload a .geojson file with the buffers to the 811 service so that anyone that calls before they dig within the buffer area will generate a ticket.
This is a sample of underground utilities.
This shows the buffers around the facilities.
What if you did this:
Note: The buffer area doesn't need to be exactly 50 feet. It could be 50.4' 5.9' or 52.25', You simply need to upload an area or a polygon that indicates don't dig in this area. If your buffer is a little more than 50' no one is gonna accuse you of foul play.
Chicagolooper
There are thousands of these Polylines. Are you familiar with the Analyze>Feature Buffer command? It's really slick and does all this automatically including trimming out overlaps.
If we're going to get into this whole buffer thing we should start a new thread. It's a lengthy process with lots of back and forth using MAPIMPORT and creating .sdf's and .shp's but the results are quite elegant.
OK. Yes, the buffer will create an 'area' or polygon in SDF format.It appears, from your description, that you have not properly checked out and or have not properly checked back in. Have you tried this:
Chicagolooper
All edits were being done in the shapefile that contained Polylines. the Polylines represent actual underground facilities. Once those facilities are correctly drawn then the buffers are then generated automatically-no editing required or desired.
Since I was not able to check-in the edits to the shapefile, I've just recreated all the edits in a Polyline drawing and then turn them into a shapefile. This is what I should have been doing all along but I thought I could edit the shapefile. These lines will always change so the process in ongoing.
Question
OP needs GeoJson file format to upload. There are converters dwg to GeoJson. Would this be better handled as a topography with topo buffer in dwg format convertible to the GeoJson format?
dave
Hi @parkr4st
I hope you can figure it out.
The OP titled this thread Conceptual Shapefile.
The OP is using the MAPFDOBUFFERCREATE command which will output a buffer in SDF format.
The OP mentions he needs to upload GeoJson in post #9.
It's inconsistent:
What he titled the thread VS. what his workflow gives him VS. what he says he needs
Huh? Really?
Chicagolooper
I apologize for any confusion, I really made my initial post looking for a discussion of where a .shp file comes in the work process. I had been trying to work with the features in a .shp file as one would lines in vanilla acad. This last exercise has led me to believe that for my process it is better to think of the features of a .shp as output of the engineering process instead of an input to the process.
As always I value all the great help that I find on this forum and in the future I'll confine my posts to questions looking for a specific solution rather than general discussion.
Best regards,
Frank
clarify something
.shp in the map, you edit an object(s) in the .shp, mapcheckinall does not save the edits?
buffer the routes. you need to change a route. delete the buffer associated with that route
select the object ( selecting the object activates mapcheckout), and edit it. leave it selected.
MAPFDOFEATUREBUFFER , dialogue will show 1 selected, and set a different width for the buffer, save it to the existing buffer file, respond yes to overwrite, the buffer is added to that object in the map, mapcheckinall
close the map, new map D &D the route .shp and buffer .sdf into the map. doe they appear correctly?
I can tell this, in my new workflow my first map file is only the polylines of the underground utilities. My issue was with trying to edit the shp file produced from the polylines. Now I edit the polylines which are drawing objects and once they are correct I proceed through a series of other saved drawings in which I convert the polyline DO's to a shp, then create the buffers. That way I do not have to edit the buffers, and the correct data for the underground utilities resides in the first file as DO's. Even though the workflow entails a series of files, once the original polyline file is corrected the ensuing steps are all automatic and only take a matter of minutes. If I was to edit the buffers without changing my initial polylines I would no longer have an accurate record as a starting point that shows the utilities.
Can't find what you're looking for? Ask the community or share your knowledge.