Привет, я пытаюсь проанализировать значение пути VML, используя манипуляции со строками Java. Я хочу восстановить все команды на пути, такие как MoveTo, LineTo, CurveTo, RLineTo (другие команды) и соответствующие им координаты/параметры x и y.
Вот примеры данных для анализа, каждая команда имеет свои собственные координаты x, y.
1. m1,1 l1,200,200,200,200,1 xe
2. m, l1,200,200,200,200,1 xe
Можете ли вы предложить алгоритм или код для получения команд и параметров для каждой команды? Например в №1.
Command = moveto 'm'
Command Parameters = (x=1,y=1).
Ссылка: http://www.w3.org/TR/NOTE-VML#_Toc416858391 а>
Это что-то странное, но я пытался использовать StringTokenizer, например
StringTokenizer tokenizer = new StringTokenizer(path);
Друг предложил использовать StringTokenizer, и он сделал что-то близкое к моей цели, он дал мне следующие данные. Возможно, я смогу использовать StringTokenizer для своих нужд.
m1,1
l1,200,200,200,200,1
xe
Для № 1 вот идеальный результат. (псевдокод)
String command_type = "m" List<String, String> parameters = add("1", "1")
String command_type = "l" List<String, String> parameters = add("1", "200")
add("200", "200")
add("200", "1")
String command_type = "x" (can have no parameter )
String command_type = "e" (can have no parameter )
Для № 2 вот идеальный результат. (псевдокод)
String command_type = "m" List<String, String> parameters = add("0", "0") // because the x and y parameters are not specified so I need to force them to 0,0
String command_type = "l" List<String, String> parameters = add("1", "200")
add("200", "200")
add("200", "1")
String command_type = "x" (can have no parameter )
String command_type = "e" (can have no parameter )